怎样用 matlab 画出指定几个点的曲线光滑

2025-04-13 13:43:43
推荐回答(4个)
回答1:

一、x1=[0.8395

0.7995

0.7895

0.7867

0.7857

0.7853

0.7847

];

y1=[1.11E-01

4.64E-02

1.19E-03

1.77E-04

1.57E-05

3.45E-06

2.55E-07

];

semilogy(x1,y1)%原来的折线

x2=linspace(min(x1),max(x1));

y2=interp1(x1,y1,x2,'cubic');

figure

semilogy(x2,y2)%处理后的曲线。

二、例如:

x1=[10,20,30,40,50];

y1=[18.13286,81.2038,98.53712,223.075,264.4804];

plot(x1,y1,'or');

hold on;

X = min(x1):.1:max(x1);

Y = interp1(x1,y1,X,'cubic');

plot(X,Y);

hold off。

扩展资料:

MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。

新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。

参考资料来源:百度百科-MATLAB

回答2:

x1=[0.8395
0.7995
0.7895
0.7867
0.7857
0.7853
0.7847
];
y1=[1.11E-01
4.64E-02
1.19E-03
1.77E-04
1.57E-05
3.45E-06
2.55E-07
];

semilogy(x1,y1)%原来的折线

x2=linspace(min(x1),max(x1));
y2=interp1(x1,y1,x2,'cubic');
figure
semilogy(x2,y2)%处理后的曲线

回答3:

x1=[0.8395
0.7995
0.7895
0.7867
0.7857
0.7853
0.7847
];
y1=[1.11E-01
4.64E-02
1.19E-03
1.77E-04
1.57E-05
3.45E-06
2.55E-07
];

semilogy(x1,y1)%原来的折线

x2=linspace(min(x1),max(x1));
y2=interp1(x1,y1,x2,'cubic');
figure
semilogy(x2,y2)%处理后的曲线

回答4:

x1=[0.8395
0.7995
0.7895
0.7867
0.7857
0.7853
0.7847
];
y1=[1.11E-01
4.64E-02
1.19E-03
1.77E-04
1.57E-05
3.45E-06
2.55E-07
];
x1x=min(x1);x1z=max(x1);%
xi=x1x:0.001:x1z%
yi=interp1(x1,y1,xi,'spline')%
h=semilogy(x1,y1,'o',xi,yi)
grid on;
xlabel(' E b / N 0 ( d B )');
ylabel('B E R');
shading interp;