MATLAB二维、三维图形的绘制

您所在的位置:网站首页 matlab的plot不能用 MATLAB二维、三维图形的绘制

MATLAB二维、三维图形的绘制

2023-06-30 10:26| 来源: 网络整理| 查看: 265

本篇文章主要介绍了MATLAB二维、三维图形绘制,图形属性的设置和图形修饰。二维图形绘制包括使用plot函数绘制二维曲线、选用绘图线型和颜色、添加文字标注、修改坐标轴的显示范围、子图和特殊图形绘制;三维图形的绘制介绍了绘制空间螺旋线和椭圆抛物面两个例子,供读者参考使用。

1.二维图形的绘制

(1)使用plot函数绘制一条正弦曲线和余弦曲线:

clear x=linspace(0,2*pi,100); y1=sin(x); plot(x,y1) hold on %保持原有的图形 plot(x,cos(x))

运行结果如下:

 (2)plot函数的参数也可以是矩阵:

close all%关闭所有图形窗口 x=linspace(0,2*pi,100);%用于生成0到2*pi范围内的数据点 y1=sin(x); y2=cos(x); A=[y1;y2]';%把矩阵转置 B=[x;x]'; plot(B,A)%plot参数也可以是矩阵

本处程序与上面的程序表达意义相同,只是形式有所差别,仿真结果是一样的。

(3)选用绘图线型和颜色:

%选用绘图颜色和线型 close all %关闭所有图形窗口 plot(x,y1,'g+',x,y2,'r:') grid on %添加网格线

注意运行这里的程序需要前面的程序在MATLAB的路径下,运行的结果如下:

 (4)添加文字标注:

%添加文字标注 title('正弦曲线和余弦曲线') ylabel('幅度') xlabel('时间') legend('sin(x)','cos(x)') gtext('\leftarrowsinx')%可用鼠标选择标注的位置 % leftarrowsinx产生左箭头,‘\’为转义符

运行该段程序也需要前面的程序在MATLAB路径下,且运行得到的图形不能删除,运行结果如下图所示:

 运行该段程序会先得到一个十字光标,可用鼠标点击需要标注的位置,在该光标点击处会显示一个箭头和sinx的符号,若要修改得到的标注只需要修改最后一段程序即可。

(5)修改坐标轴范围:

axis equal %使x轴和y轴的比例相等 axis normal %防止图形显示时出现扭曲或拉伸 axis ([0 pi 0 1.5]) %axis函数语法为:axis([xmin xmax ymin ymax])

运行结果如下:

(6)子图和特殊图形的绘制 :

subplot(2,2,1) t1=0:0.1:3; y1=exp(-t1); bar(t1,y1); %将数据以柱状图的形式展现 subplot(2,2,2) t2=0:0.2:2*pi; y2=sin(t2); stem(t2,y2); %将离散信号的取值以垂直信号的形式展现 subplot(2,2,3) t3=0:0.1:3; y3=t3.^2+1; stairs(t3,y3); %将数据以阶梯状的线段展示出来 subplot(2,2,4) t4=0:.01:2*pi; y4= abs(cos(2*t4)); polar(t4,y4); %将数据以极坐标系的形式展示

程序运行结果如下:

2.三维图形的绘制 

(1)使用plot3函数绘制一条空间螺旋线:

%绘制一条空间螺旋线 z=0:0.1:6*pi; x=cos(z); y=sin(z); plot3(x,y,z)

 (2)绘制椭圆抛物面:

%绘制椭圆抛物面 clear all,close all x=-4:0.2:4; y=x; [X Y]=meshgrid(x,y); Z=X.^2/9+Y.^2/9; mesh(X,Y,Z); title('椭圆抛物面网线图') surf(X,Y,Z); title('椭圆抛物面网面图')

运行结果如下:

MATLAB绘制网线图和网面图的函数分别是mesh()、surf(),其具体操作步骤是:

①用函数meshgrid()生成平面网格点矩阵[X,Y];

②由[X,Y]计算函数数值矩阵Z;

③用mesh()绘制网线图,用surf()绘制网面图。

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3