如何用matlab在一个图上画散点图和两个函数,目的是为了比较这两个函数哪个接近散点图,哪个更好
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/10 19:07:30
如何用matlab在一个图上画散点图和两个函数,目的是为了比较这两个函数哪个接近散点图,哪个更好
即散点图那个是真值,两个函数是用两种方法做出来了,比较哪个更好
即散点图那个是真值,两个函数是用两种方法做出来了,比较哪个更好
clear all;clc;
x1=0:0.1:2*pi;
x=linspace(0,2*pi,length(x1)/5);
y1=sin(x1)+0.05;
y2=sin(x1)-0.05;
y=sin(x);
plot(x1,y1,x1,y2,'r');grid on;hold on;
plot(x,y,'*');
再问: 可以说的详细点么?都代表什么,谢谢
再答: 其实没什么,因为没有你的数据。y=sinx就散点图,就是你说的真值 y1和y2是模拟的与y有误差的2个函数,画在一起,就是2个函数与正真值的对比
再问: 例如: x=[0.4 0.7 1.3 1.7 2.3 2.6 3.9 4.1 4.5 5.0 5.0 6.0 6.0 10.0] y=[1.8 1.36 1.65 2.1 2.7 2.9 3.9 3.6 3.6 3.8 4.0 3.7 5.5 6.0] 一个函数是y=x^2/(-1.024+2.418x)^2 另一个函数是y=1.1309+0.68x-1.9207x^2 谢了!
再答: 你的数据有点问题,对了你不是要拟合曲线或插值运算吧,只画图是吧: clear all;clc x=[0.4 0.7 1.3 1.7 2.3 2.6 3.9 4.1 4.5 5.0 5.0 6.0 6.0 10.0]; y=[1.8 1.36 1.65 2.1 2.7 2.9 3.9 3.6 3.6 3.8 4.0 3.7 5.5 6.0]; t=linspace(min(x),max(x),20); y1=t.^2./(-1.024+2.418*t).^2 y2=1.1309+0.68*t-1.9207*t.^2 plot(x,y,'*');hold on; plot(t,y1,t,y2,'r');
再问: 运行不出来啊,Error: Missing MATLAB operator.
再答: 怎么可能?我运行完直接复制的。你再检查一下。
x1=0:0.1:2*pi;
x=linspace(0,2*pi,length(x1)/5);
y1=sin(x1)+0.05;
y2=sin(x1)-0.05;
y=sin(x);
plot(x1,y1,x1,y2,'r');grid on;hold on;
plot(x,y,'*');
再问: 可以说的详细点么?都代表什么,谢谢
再答: 其实没什么,因为没有你的数据。y=sinx就散点图,就是你说的真值 y1和y2是模拟的与y有误差的2个函数,画在一起,就是2个函数与正真值的对比
再问: 例如: x=[0.4 0.7 1.3 1.7 2.3 2.6 3.9 4.1 4.5 5.0 5.0 6.0 6.0 10.0] y=[1.8 1.36 1.65 2.1 2.7 2.9 3.9 3.6 3.6 3.8 4.0 3.7 5.5 6.0] 一个函数是y=x^2/(-1.024+2.418x)^2 另一个函数是y=1.1309+0.68x-1.9207x^2 谢了!
再答: 你的数据有点问题,对了你不是要拟合曲线或插值运算吧,只画图是吧: clear all;clc x=[0.4 0.7 1.3 1.7 2.3 2.6 3.9 4.1 4.5 5.0 5.0 6.0 6.0 10.0]; y=[1.8 1.36 1.65 2.1 2.7 2.9 3.9 3.6 3.6 3.8 4.0 3.7 5.5 6.0]; t=linspace(min(x),max(x),20); y1=t.^2./(-1.024+2.418*t).^2 y2=1.1309+0.68*t-1.9207*t.^2 plot(x,y,'*');hold on; plot(t,y1,t,y2,'r');
再问: 运行不出来啊,Error: Missing MATLAB operator.
再答: 怎么可能?我运行完直接复制的。你再检查一下。