MATLAB绘图—三维曲线绘图-I

MATLAB绘图—三维曲线绘图-I

原创不易,路过的各位大佬请点个赞

plot3 命令时二维绘图plot命令的拓展,它们的使用调用格式以及语法都基本相同,不同之处就是增加了一个第三维信息。

一 绘制三维图

plot3(X,Y,Z,LineSpec) 绘制三维空间中的坐标。

clear all;close all;clc;
x=1:0.1:10;         %定义x
 y=sin(x);           %定义y
 z=cos(x);           %定义z
%  plot(y,z)           %绘制二维图形
 plot3(x,y,z,'m-p') %LineSpec为使用指定的线型、标记和颜色创建绘图。

MATLAB绘图—三维曲线绘图-I_第1张图片

二、在同一组坐标轴上绘制多组坐标

要在同一组坐标轴上绘制多组坐标,请将 X、Y 或 Z 中的至少一个指定为矩阵,其他指定为向量。

plot3(X1,Y1,Z1,…,Xn,Yn,Zn) 在同一组坐标轴上绘制多组坐标。使用此语法作为将多组坐标指定为矩阵的替代方法。
plot3(X1,Y1,Z1,LineSpec1,…,Xn,Yn,Zn,LineSpecn) 可为每个 XYZ 三元组指定特定的线型、标记和颜色。

clear all;close all;clc;
t = 0:pi/500:pi;
xt1 = sin(t).*cos(10*t);
yt1 = sin(t).*sin(10*t);
zt1 = cos(t);

xt2 = sin(t).*cos(12*t);
yt2 = sin(t).*sin(12*t);
zt2 = cos(t);
plot3(xt1,yt1,zt1,'o-r',xt2,yt2,zt2,'*-b')

MATLAB绘图—三维曲线绘图-I_第2张图片

要在同一组坐标轴上绘制多组坐标,请将 X、Y 或 Z 中的至少一个指定为矩阵,其他指定为向量。

三、在同一组坐标轴上绘制多组坐标—使用矩阵绘制多个线条

clear all;close all;clc;
t = 0:pi/500:pi;
%创建包含三行 x 坐标的矩阵 X。创建包含三行 y 坐标的矩阵 Y。
X(1,:) = sin(t).*cos(10*t);
X(2,:) = sin(t).*cos(12*t);
X(3,:) = sin(t).*cos(20*t);
Y(1,:) = sin(t).*sin(10*t);
Y(2,:) = sin(t).*sin(12*t);
Y(3,:) = sin(t).*sin(20*t);
%创建矩阵 Z,其中包含所有三组坐标的 z 坐标。
Z = cos(t);
%在同一组坐标轴上绘制所有三组坐标。
plot3(X,Y,Z)

MATLAB绘图—三维曲线绘图-I_第3张图片

自定义线性、颜色、标记,以及事后修改

clear all;close all;clc;
t = 0:pi/20:10*pi;
xt = sin(t);
yt = cos(t);
p=plot3(xt,yt,t,'-o','Color','b','MarkerSize',10,'MarkerFaceColor','r')

MATLAB绘图—三维曲线绘图-I_第4张图片

修改线性

p.LineWidth = 3;

MATLAB绘图—三维曲线绘图-I_第5张图片

五、ezplot3命令

同二维情况一样,三维绘图利也有一个专门绘制符号函数的命令,ezplot3,调用格式如下

MATLAB绘图—三维曲线绘图-I_第6张图片

附录-I:指定等间距刻度单位和轴标签

clear all;close all;clc;
%创建向量 xt、yt 和 zt。
t = 0:pi/500:40*pi;
xt = (3 + cos(sqrt(32)*t)).*cos(t);
yt = sin(sqrt(32) * t);
zt = (3 + cos(sqrt(32)*t)).*sin(t);
%绘制数据,并使用 axis equal 命令沿每个轴等间距隔开刻度单位。然后为每个轴指定标签。
plot3(xt,yt,zt)
axis equal
xlabel('x(t)')
ylabel('y(t)')
zlabel('z(t)')

MATLAB绘图—三维曲线绘图-I_第7张图片

附录—LineSpec 线性、标记和颜色表MATLAB绘图—三维曲线绘图-I_第8张图片

MATLAB绘图—三维曲线绘图-I_第9张图片
MATLAB绘图—三维曲线绘图-I_第10张图片
参考资料:
MathWorks
MATLAB2018从入门到精通,作者:天工在线

原创不易,路过的各位大佬请点个赞

你可能感兴趣的:(matlab绘图,matlab绘图,matlab)