在 Matlab 中累积数据图和拟合
Accumulating plot of data and fit in Matlab
我有一个从文件导入数据并创建指数拟合的 Matlab 脚本。我希望脚本使用相同的颜色绘制数据点和拟合。图例应该是数据文件的名称。当我 运行 再次为另一个输入文件使用相同的脚本时,我希望新数据和拟合显示在同一图中 window 添加到图例的新数据文件的名称。
目前我只有这个;
expfit = fit(x,y,'exp1')
figure(1)
hold all
plot(x,y,'*','DisplayName','fileName)
legend('Interpreter','none')
legend show
使用
plot(expfit,x,y,'DisplayName','fileName')
无效
如何使用与数据相同的颜色将拟合线添加到每个数据并
将文件名添加到图例中 ?
你很接近...
一个简单的方法是预先设置颜色
c = parula(7); % default colour map with 7 colours
figure(1); clf;
hold on
% filename is a variable e.g. filename = 'blah.csv'; from where the data was loaded
plot( x, y, '*', 'DisplayName', filename, 'color', c(1,:) );
plot( expfit, x, y, '-', 'HandleVisibility', 'off', 'color', c(1,:) );
legend('show');
注意通过设置 HandleVisibility
关闭拟合将不会显示在图例中。这是个人喜好,我只喜欢数据和拟合的一个条目,您也可以在第二个图上使用 DisplayName
。
两个图都使用相同的颜色,使用 color
输入。我都使用了颜色图的第一行,如果你绘制了一些其他数据,你可以使用第二行等。
另一种方法是让 MATLAB 自动确定颜色并复制第二个绘图的颜色,您需要为第一个绘图创建一个变量 (p
) 以获得颜色
p = plot( x, y, '*', 'DisplayName', filename );
plot( expfit, x, y, '-', 'HandleVisibility', 'off', 'color', p.Color );
其他代码相同。
我有一个从文件导入数据并创建指数拟合的 Matlab 脚本。我希望脚本使用相同的颜色绘制数据点和拟合。图例应该是数据文件的名称。当我 运行 再次为另一个输入文件使用相同的脚本时,我希望新数据和拟合显示在同一图中 window 添加到图例的新数据文件的名称。
目前我只有这个;
expfit = fit(x,y,'exp1')
figure(1)
hold all
plot(x,y,'*','DisplayName','fileName)
legend('Interpreter','none')
legend show
使用
plot(expfit,x,y,'DisplayName','fileName')
无效
如何使用与数据相同的颜色将拟合线添加到每个数据并 将文件名添加到图例中 ?
你很接近...
一个简单的方法是预先设置颜色
c = parula(7); % default colour map with 7 colours
figure(1); clf;
hold on
% filename is a variable e.g. filename = 'blah.csv'; from where the data was loaded
plot( x, y, '*', 'DisplayName', filename, 'color', c(1,:) );
plot( expfit, x, y, '-', 'HandleVisibility', 'off', 'color', c(1,:) );
legend('show');
注意通过设置 HandleVisibility
关闭拟合将不会显示在图例中。这是个人喜好,我只喜欢数据和拟合的一个条目,您也可以在第二个图上使用 DisplayName
。
两个图都使用相同的颜色,使用 color
输入。我都使用了颜色图的第一行,如果你绘制了一些其他数据,你可以使用第二行等。
另一种方法是让 MATLAB 自动确定颜色并复制第二个绘图的颜色,您需要为第一个绘图创建一个变量 (p
) 以获得颜色
p = plot( x, y, '*', 'DisplayName', filename );
plot( expfit, x, y, '-', 'HandleVisibility', 'off', 'color', p.Color );
其他代码相同。