matlab中两个函数图形怎么相加?
两个函数图象都是分别以100个坐标点确定的,两者相对位置并不确定,但是有共同的上下限。我需要得到两幅图形加和之后的一幅图,但是不知道怎么相加..简单加和应该是不行的因为两...
两个函数图象都是分别以100个坐标点确定的,两者相对位置并不确定,但是有共同的上下限。
我需要得到两幅图形加和之后的一幅图,但是不知道怎么相加..简单加和应该是不行的因为两组100个点的横坐标并不一一对应;并且虽然每幅图只有100个点的数据,但是两点之间画出图之后也是有值的,所以把两组100个点并为一组200个点画图也是不行的。
请matlab大神赐教! 展开
我需要得到两幅图形加和之后的一幅图,但是不知道怎么相加..简单加和应该是不行的因为两组100个点的横坐标并不一一对应;并且虽然每幅图只有100个点的数据,但是两点之间画出图之后也是有值的,所以把两组100个点并为一组200个点画图也是不行的。
请matlab大神赐教! 展开
4个回答
展开全部
利用插值将两个函数数据的x坐标统一,然后就可以相加了
实际我们只有数据点的值,而两个点之间的值我们是没有的
通过插值,我们可以得到两个数据点之间原本我们没有的数据
当然,这些插值的数据并不是精确的只是根据原来的数据推算出来的
x1=(0:100)+rand(1,101);
x2=(0:100)+rand(1,101);
y1=sin(x1/5);
y2=sin(x2/7);
%两个函数,由于x坐标取值加了随机数,所以不能对应
ix=0:100;
iy1=interp1(x1,y1,ix,'spline');
iy2=interp1(x2,y2,ix,'spline');
%利用插值同一新坐标为0:100
iy=iy1+iy2;%由于x坐标对应,函数可以直接相加
plot(x1,y1,'r-o');hold on
plot(x2,y2,'k-o');
plot(ix,iy);
legend('y1','y2','y1+y2');
hold off
展开全部
比如有y1 和 y2 两个曲线,直接plot(y1+y2)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先问一下,你的图是怎么出来的的,用像plot(x,y)这样吗。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询