rita 发表于 2008-3-1 23:24

如何画出近似于抛物线的图

请教一下怎样用matlab画出近似于抛物线的图,我是输入点的坐标,但是图形不圆滑,怎样改变能使曲线比较圆滑呢。

——你的标题不符合规范,请认真阅读一遍会员守则,如果不是看到有版友回复我就操刀删帖的了by eight

[ 本帖最后由 eight 于 2008-3-2 09:57 编辑 ]

zzm_3392 发表于 2008-3-2 09:20

点数取密集一点可能会好一些,而且画出图后改变图的大小视觉效果也会不同。

rita 发表于 2008-3-2 11:37

我知道。但是现在的点我只能找出这些,再没有别的办法了吗

sigma665 发表于 2008-3-2 11:45

回复 3楼 的帖子

插值拟合

rita 发表于 2008-3-3 20:10

求插值拟合的程序

我现在有一组数据,大约有二十个点。想画出图形,但是不够圆滑。有没有现成数值拟合的程序借用一下。谢谢

dundun628 发表于 2008-3-3 23:22

函数插值与曲线拟合

1、函数插值

一维插值: interp1(x,y,cx,’method’)

一维插值: interp1(x,y,z,cx,cy,’method’)

method:nearest、linear、spline、cubic

例:

clear

echo on

x=-2:0.4:2;

y=[2.8 2.96 2.54 3.44 3.56 5.4

6.0 8.7 10.1 13.3 14.0];

t=-2:0.01:2;

nst=interp1(x,y,t,'nearest');

plot(x,y,'r*',t,nst)

title('最临近点插值')

lnr=interp1(x,y,t,'linear');

figure(2)

plot(x,y,'r*',t,lnr,'b:')

title('线性插值')

spl=interp1(x,y,t,'spline');

figure(3)

plot(x,y,'r*',t,spl)

title('样条插值')

cbc=interp1(x,y,t,'cubic');

figure(4)

plot(x,y,'r*',t,cbc,'k-')

title('三次插值')

2、曲线拟合

多项式拟合:polyfit(x,y,m) 线性:m=1, 二次:m=2, …

例:

x=0:0.1:1;

y=[-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2];

A=polyfit(x,y,2)

Z=polyval(A,x);

Plot(x,y,’r*’,x,z,’b’)

你所做的就是选择合适的差值方式,画图,或者插值,再画图
页: [1]
查看完整版本: 如何画出近似于抛物线的图