自然状态下,用plot画的是折线,而不是平滑曲线。
有两种方法可以画平滑曲线,第一种是拟合的方法,第二种是用spcrv,其实原理应该都一样就是插值。下面是源程序,大家可以根据需要自行选择,更改拟合的参数。
clc,clear;
a = 1:1:6; %横坐标
b = [8.0 9.0 10.0 15.0 35.0 40.0]; %纵坐标
plot(a, b, 'b'); %自然状态的画图效果
hold on;
%第一种,画平滑曲线的方法
c = polyfit(a, b, 2); %进行拟合,c为2次拟合后的系数
d = polyval(c, a, 1); %拟合后,每一个横坐标对应的值即为d
plot(a, d, 'r'); %拟合后的曲线
plot(a, b, '*'); %将每个点 用*画出来
hold on;
%第二种,画平滑曲线的方法
values = spcrv([[a(1) a a(end)];[b(1) b b(end)]],3);
plot(values(1,:),values(2,:), 'g');
效果:
分享到:
相关推荐
学会用一维插值函数yi=interp1(xo,yo,x,’menthod’)求出函数在插值点处的函数值,和用二维函数plot()作图。用二维插值函数zi=interp2(x0,y0,z0,x,y,’method’)求其在网格节点数据的插值,和用三维函数surfc()作图.
x=[0 0.1 0.16 0.27 0.41 0.48 0.59 0.8]; y=[5 9 70 118 100 17 0 5]; y1=[22.8 22.8 22.8 22.8 22.8 22.8 22.8 22.8]; values1=spcrv([[x(1) x...plot(values1(1,:),values1(2,:),'r',values2(1,:),values2(2,:),'b')
两条离散曲线求差,采用拟合的方式得到两条曲线的差值。程序中画了离散程度不同的曲线求差;两条离散曲线求差,采用拟合的方式得到两条曲线的差值。程序中画了离散程度不同的曲线求差
matlab 上三点画圆弧的程序,输入三个点坐标即可。
输入误差值,程序即可自动计算均方根误差,并绘制曲线;用户需根据实际情况调整代码,以适应自己的需要
matlab plot函数 中文使用方法
本代码主要利用MATLAB工具实现MATLAB——plot绘图,简单明了,易于理解
在命令行输入%%滞回曲线t0=0;tf=20;x0=[0 0 0][tx]=ode45('Lorenz'[t0 tf]x0);plot(x(:1)x(:3)),可得滞回曲线
手工作图 1、找点:x=0, pi/6, pi/3, pi/2, 2*pi/3, 5*pi/6, … 2、计算函数值:y=sin(0), sin(pi/6), sin(pi/3), … 3、描点:在坐标系中画出这 些离散点 4、用直线或曲线连接这些点, 得到函数的大致图形 Matlab ...
matlab 画三维图形的重要方法,
通过一系列形值点的一条光滑曲线,MATLAB平台上可用。
用于绘制LLC的增益曲线。把这段代码放到Matlab里,运行,就能够绘制出来LLC的增益曲线了。
椭圆拟合程序的源码,用于图像处理。 Description There are two main methods for least squares ellipse fitting: 1) Minimise algebraic distance, i.e. minimise sum(F(x)^2) subject to some constraint, ...
另外就是,对于一组离散点构成的曲线,很难知道它们的解析表达式,因此想通过非线性方程组求解的方法来求交点,就不大可能了(不过你可以用曲线拟合出函数解析式),因此,本帖的方法将会是一个较为有效求交点的方法...
用matlab画二维图形玫瑰花,直接运行
matlab 中画图型,各种曲线图等的命令与方法,有代码示例
matlab中二维线画图函数 1. plot(x,y); %x y 为相应点集 2.plot(x,y1,x,y2); % 在一个窗口下绘制多条曲线之方法一 3.hold on %在一个窗口下绘制多条曲线之方法二 plot(x,y1); plot(x,y2); hold off 4.plot...
绘制图形。在MATLAB中绘制心形曲线,3D,动态,并有转场文字。
介绍了如何用plot画图指令,以及如何从simulink里导出数据到workspace,然后用PLOT画图。
用MATLAB 命令将simulink 示波器的图形画出。用plot等几种方式将matlab仿真的图像在外部命里窗口画出来。