MATLAB 如何使曲线光滑
MATLAB作图时如何使得线条变得光滑,调节格点大小实现不了,举个具体列子。smooth能实现不?如果可以它是怎么实现的呢?谢谢!另外画等高线改实线为虚线一直不能在图里显...
MATLAB作图时如何使得线条变得光滑,调节格点大小实现不了,举个具体列子。smooth能实现不?如果可以它是怎么实现的呢?谢谢!另外画等高线改实线为虚线一直不能在图里显示,如何实现呢?谢谢
展开
5个回答
展开全部
1、首先准备两列数据,作为xy坐标值,使用plot命令作图如下。
2、然后进行数据拟合,这里使用matlab的polyfit命令。如果数据的规律性很差的话,polyfit后面设置的参数要足够大才能保证拟合精度,在这个数据中选择15。
3、拟合后与原来数据对比后的std约为0.1287.y的平均值为113.精度值根据不同的需要设计不同的拟合值。
4、matlab下的命令为polyder。求导后得到的数据作图如下。可以看到在比区间上,导数有两处为0,这与原来曲线相符。
5、最后就完成了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
解决方法为三次样条差值,说白了,就是你给一些稀疏的点,计算机自动根据连续三次多项式函数拟合,并生成密集且连续的点。
例如
x0=[1,2,3,4];
y0=[2,3,1,4];
%以上是稀疏的点
x=1:0.1:4;%这个是1到4之间间距0.1的密集的点
y=spline(x0,y0,x);%计算这些密集的x点对应的y点。
若要调整格点大小,可以改变x数列的值。例如要间隔0.01,那么x=1:0.01:4即可。
除了三次样条差值,还有线性差值,把spline改为interp1即可。另外,还有拉格朗日差值等,不过你应该用三次样条足以。
例如
x0=[1,2,3,4];
y0=[2,3,1,4];
%以上是稀疏的点
x=1:0.1:4;%这个是1到4之间间距0.1的密集的点
y=spline(x0,y0,x);%计算这些密集的x点对应的y点。
若要调整格点大小,可以改变x数列的值。例如要间隔0.01,那么x=1:0.01:4即可。
除了三次样条差值,还有线性差值,把spline改为interp1即可。另外,还有拉格朗日差值等,不过你应该用三次样条足以。
追问
不是特别明白哦哦,你能举个实例么,比如:
x=[0:1:8];
y=sin(x)怎么操作?会采纳你方法的,谢谢!
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
做加密算法,把你要的点用算法加的更密集
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用三次样条插值 算法 可以使 曲线 很光滑
不知道 你学过 这个算法吧
如果没有 你可以搜 下 这个算法
网上比较多
请采纳。
不知道 你学过 这个算法吧
如果没有 你可以搜 下 这个算法
网上比较多
请采纳。
追问
你那句话复制的啊,我都看过了。照着看了,不会。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询