matlab 怎么分别提取figure子图中曲线的数据
lh=findall(gca,'type','line'); % 从当前图(gca)中取出曲线的handlexc=get(lh,'xdata'); % 取出x轴数据,注意,这个x和y是以cell的数据结构保存的
yc=get(lh,'ydata');
这样只能得到第二条线上的数据
如果想分别得到两条线上的,将gca换成gcf就行了。
然后你这个程序里的yc就会是
即两列图里的y值。
不过要注意cell本身顺序和你让MATLAB画图的顺序相反,
比如说你先subplot了(x1,y1), 然后是(x2, y2),
不管这两张图哪张在上哪张在下,
yc{1}会是y2, yc{2}则是y1。
当然从方便角度考虑,往往还是画图的时候直接给subplot加handle好。 clc;clear
figure_info=findall(gcf,'type','line');
xc1=get(figure_info(1,:),'xdata')
xc2=get(figure_info(2,:),'xdata')
yc1=get(figure_info(1,:),'ydata')
yc2=get(figure_info(2,:),'ydata') 谢谢啊,搞定了。。
3# 南边的北边 谢谢啊,把gca换成gcf就好了。 2# nwcwww
页:
[1]