迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > MATLAB >

MATLAB 中的 3D 线图或点图

作者:迹忆客 最近更新:2023/03/19 浏览次数:

本文将讨论使用 MATLAB 中的 plot3() 函数创建点或线的 3D 图。

使用 MATLAB 中的 plot3() 函数创建点或线的 3D 图

我们已经知道 MATLAB 中的 plot() 函数,该函数用于在 2D 平面上绘制数据。

plot3() 函数类似于 plot() 函数。唯一的区别是 plot3() 函数在 3D 平面上绘制数据。

我们可以将数据绘制为称为连续图的线,也可以绘制为点,也称为离散图。我们必须传递三个坐标 x、y 和 z,才能在 3D 平面上绘制数据。

例如,让我们使用 plot3() 函数在 3D 中绘制一个螺旋线。请参阅下面的代码。

clc
t = 0:pi/50:10*pi;
sinet = sin(t);
cost = cos(t);
plot3(sinet,cost,t)

输出:

3D 图上的螺旋线

我们还可以通过在 plot3() 函数中使用多个输入来同时绘制多条线。

例如,让我们使用六个输入和 plot3() 函数绘制两条线。请参阅下面的代码。

clc
time = 0:pi/500:pi;
xs1 = sin(time).*cos(10*time);
ys1 = sin(time).*sin(10*time);
zs1 = cos(time);

xs2 = sin(time).*cos(12*time);
ys2 = sin(time).*sin(12*time);
zs2 = cos(time);
plot3(xs1,ys1,zs1,xs2,ys2,zs2)

输出:

使用 plot3 绘制多条线图

在多条线的情况下,plot3() 函数将为每条线赋予不同的颜色。我们还可以使用 legend() 函数为每一行指定一个唯一的名称。你可以将多个数据的坐标保存到单个矩阵中,而不是传递六个参数。

例如,在上述情况下,我们可以将单个矩阵中每个数据的 x 坐标保存为列,其余坐标也是如此。然后我们只需要传递三个输入。

我们还可以使用 xlabel() 函数为 x 轴标签、ylabel() 为 y 轴标签和 label() 为 z 轴标签添加标签到 3D 绘图的每个轴。我们还可以使用 title() 函数为标题指定绘图。

我们甚至可以使用不同的标记将线更改为离散图的点,例如 o 表示圆圈,+ 表示加号,*表示星号,d 表示菱形。

例如,让我们以离散形式绘制上述图形,并为图形添加标签和标题。请参阅下面的代码。

clc
time = 0:pi/500:pi;
xs1 = sin(time).*cos(10*time);
ys1 = sin(time).*sin(10*time);
zs1 = cos(time);

xs2 = sin(time).*cos(12*time);
ys2 = sin(time).*sin(12*time);
zs2 = cos(time);
plot3(xs1,ys1,zs1,'+',xs2,ys2,zs2,'d')
legend('Line1','Line2')
axis equal
xlabel('x(t)')
ylabel('y(t)')
zlabel('z(t)')
title('3D line plot')

输出:

使用 plot3 分解图

我们还可以使用 LineStyle 属性更改其他属性,例如使用 LineStyle 属性更改线条样式,使用 Color 属性更改线条颜色,使用 LineWidth 属性更改线条宽度,使用 MarkerSize 属性更改标记大小,使用标记边缘颜色 MarkerEdgeColor 属性、标记面颜色或使用 MarkerFaceColor 属性的标记填充颜色。

我们还可以使用 LineSpec 属性同时更改线条样式、标记和颜色。例如,让我们更改上图的一些属性。请参阅下面的代码。

clc
time = 0:pi/500:pi;
xs1 = sin(time).*cos(10*time);
ys1 = sin(time).*sin(10*time);
zs1 = cos(time);

plot3(xs1,ys1,zs1,'LineStyle','--','Color','red','LineWidth',3)
legend('Line1','Line2')
axis equal
xlabel('x(t)')
ylabel('y(t)')
zlabel('z(t)')
title('3D line plot')

输出:

更改 plot3 的属性

我们支持的 plot3() 函数的线条样式是 - 代表实线,-- 代表虚线,: 代表虚线,-. 对于点划线。我们可以使用颜色名称或 RGB 三元组值来更改线条或标记的颜色。

默认线宽为 0.5,但我们可以使用任何正值设置其值。默认情况下,标记大小值为 6,但我们可以将其更改为任何正值。

默认情况下,标记边缘颜色设置为自动,标记面颜色设置为,但我们可以使用颜色名称或 RGB 三元组值为标记指定任何颜色。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 Matplotlib Pyplot 中显示网格

发布时间:2024/02/04 浏览次数:142 分类:Python

本文演示了如何在 Python Matplotlib 中在一个图上画一个网格。使用 grid()函数来绘制网格,并解释了如何改变网格颜色和线条类型。

如何在 Matplotlib 中画一条任意线

发布时间:2024/02/04 浏览次数:166 分类:Python

本教程讲解了我们如何在 Matplotlib 中使用 matplotlib.pyplot.plot()、matplotlib.pyplot.vlines()、matplotlib.pyplot.hlines()方法和 matplotlib.collection.LineCollection 绘制任意线条。

Matplotlib 中的叠加条形图

发布时间:2024/02/04 浏览次数:182 分类:Python

本教程展示了如何使用 plt.bar()方法将某些数据集的条形图堆叠在另一个数据集上。我们在 Matplotlib 中使用 matplotlib.pyplot.bar()方法生成条形图。

设置 Matplotlib 网格间隔

发布时间:2024/02/04 浏览次数:250 分类:Python

本教程将介绍我们如何在 Matplotlib 绘图中设置网格间距,并对主要网格和次要网格应用不同的样式。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便