wgwhl 发表于 2011-6-7 09:39

如何将两个曲线的图例合并

10个原始数据点,和这些点的拟合曲线在Axis中是两条曲线,现在要求将这两条曲线的图例合并在一起,就像 一个短线中间有个点 ,其中的点表示原始点的线型,曲线是拟合曲线的线型
请各位高人帮忙提供思路,谢谢!



wangyouyi 发表于 2011-6-7 10:57

以前也遇到过类似的问题,还没想到解决办法,帮忙顶下!{:{39}:}
等待高手帮忙解决。

ChaChing 发表于 2011-6-7 11:52

老话, 给齐一些粗略代码, 不然较浪费时间

zhouyang664 发表于 2011-6-7 22:11

实在不行,就手动添加吧!

ChaChing 发表于 2011-6-7 23:30

???
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');

wangyouyi 发表于 2011-6-8 12:26

回复 5 # ChaChing 的帖子

请教一下,能不能让原始数据只显示数据的点,而不显示连线,而legend显示'o-'!这个我想了很长时间,也没想到怎么弄!

ChaChing 发表于 2011-6-8 22:39

回复 6 # wangyouyi 的帖子

这个我也没想到怎么弄!:@L

wgwhl 发表于 2011-6-9 11:12

wangyouyi 发表于 2011-6-8 12:26 static/image/common/back.gif
回复 5 # ChaChing 的帖子

请教一下,能不能让原始数据只显示数据的点,而不显示连线,而legend显示'o-'! ...

很我的问题一样啊
难得,难得

wangyouyi 发表于 2011-6-9 11:52

回复 8 # wgwhl 的帖子

哦 我以前遇到过这个问题 弄了下也没想到好的解决方法!{:{19}:}

wgwhl 发表于 2011-6-9 12:37

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

wangyouyi 发表于 2011-6-9 13:12

回复 10 # wgwhl 的帖子

这个方法很不错! {:{39}:}

ChaChing 发表于 2011-6-9 15:17

在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]
查看完整版本: 如何将两个曲线的图例合并