如何将两个曲线的图例合并
10个原始数据点,和这些点的拟合曲线在Axis中是两条曲线,现在要求将这两条曲线的图例合并在一起,就像 一个短线中间有个点 ,其中的点表示原始点的线型,曲线是拟合曲线的线型请各位高人帮忙提供思路,谢谢!
以前也遇到过类似的问题,还没想到解决办法,帮忙顶下!{:{39}:}
等待高手帮忙解决。 老话, 给齐一些粗略代码, 不然较浪费时间 实在不行,就手动添加吧! ???
clc; clear; x=0.5: 0.5: 5; y=erf(x); p=polyfit(x,y,6);
xi=0: 0.1: 5; yi=polyval(p,xi);
plot(x,y,'o',xi,yi,'-'); legend('original','fitting');
figure; plot(x,y,'o-',xi,yi,'-'); legend('Data'); 回复 5 # ChaChing 的帖子
请教一下,能不能让原始数据只显示数据的点,而不显示连线,而legend显示'o-'!这个我想了很长时间,也没想到怎么弄! 回复 6 # wangyouyi 的帖子
这个我也没想到怎么弄!:@L wangyouyi 发表于 2011-6-8 12:26 static/image/common/back.gif
回复 5 # ChaChing 的帖子
请教一下,能不能让原始数据只显示数据的点,而不显示连线,而legend显示'o-'! ...
很我的问题一样啊
难得,难得 回复 8 # wgwhl 的帖子
哦 我以前遇到过这个问题 弄了下也没想到好的解决方法!{:{19}:} ChaChing 发表于 2011-6-7 23:30 static/image/common/back.gif
???
clc; clear; x=0.5: 0.5: 5; y=erf(x); p=polyfit(x,y,6);
xi=0: 0.1: 5; yi=polyval(p,xi);
呵呵,做了个假象,实现了需要显示的效果,代码如下:function legend_test
clc;
clear;
x=0.5: 0.5: 5;
y=erf(x);
p=polyfit(x,y,6);
xi=0: 0.1: 5;
yi=polyval(p,xi);
plot(x,y,'o',xi,yi,'-');
legend('original','fitting');
figure;
h = plot(x,y,'o-',xi,yi,'-');
set(h(1), 'Visible', 'off');
hold on;
h2 = plot(x, y, 'o');
set(h2, 'Color', get(h(1), 'Color'));
legend('Data');
end 回复 10 # wgwhl 的帖子
这个方法很不错! {:{39}:} 在LZ的基礎下, 稍微引申下clc; clear;
x1=0.5:0.5:5; y1=erf(x1); p1=polyfit(x1,y1,6); xi1=0:0.1:5; yi1=polyval(p1,xi1);
x2=0.5:0.5:5; y2=exp(x2)/50; p2=polyfit(x2,y2,3); xi2=0:0.1:5; yi2=polyval(p2,xi2);
hh = plot(x1,y1,'o-',xi1,yi1,'-',x1,y1,'o',x2,y2,'s-',xi2,yi2,':',x2,y2,'s');
set(hh(), 'Visible', 'off');
set(hh(), 'Color', get(hh(1), 'Color'));
set(hh(), 'Color', get(hh(4), 'Color'));
legend(hh(),'Data erf','Data exp');
页:
[1]