当前位置: 首页 > news >正文

20250531MATLAB三维绘图 - 教程

三维曲线:plot3

功能介绍

在这里插入图片描述

代码实现过程

%%plot三维螺旋曲线
t=0:
pi/10:10*
pi
;
x=2*t;
y=sin(t)
;
z=cos(t)
;
plot3(x,y,z)
;

plot3实现效果

在这里插入图片描述

三维曲面

空间曲面作图命令:mesh

首先,先来了解一些基础知识。

meshgrid

meshgrid 是数值计算和图形绘制中使用的函数,用于生成二维或三维网格点的坐标矩阵。
MATLAB 中的 meshgrid
在 MATLAB 中,meshgrid 函数用于生成二维或三维网格点的坐标矩阵。这些矩阵可以用于绘制曲面图、等高线图等。

语法
[X, Y] = meshgrid(x, y)
;
[X, Y, Z] = meshgrid(x, y, z)
;

在这里插入图片描述

示例

在这里插入图片描述
首先,对于x,生成一个x = -2:0.2:2; 这条语句就是生成一个行向量。其中,-2 是向量的起始值,0.2 是步长,2 是结束值。MATLAB 会从起始值开始,每次加上步长,直到达到或超过结束值(这里刚好达到结束值)来生成向量的元素。

所以在MATLAB的变量值中可以得到
在这里插入图片描述
y也是同样的一个行向量。

应用meshgrid

meshgrid 函数用于生成二维或三维网格点的坐标矩阵。
在这里插入图片描述

实操训练
x = -2:0.2:2
;
y = -2:0.2:2
;
[X, Y] = meshgrid(x, y)
;
Z = X.^2 + Y.^2
;
surf(X, Y, Z)
;

在这里插入图片描述

peaks

在 MATLAB 中,peaks 是一个内置函数,用于生成一个样本函数(通常是一个二维的“山脉”形状的函数),它主要用于演示和测试各种三维图形绘制函数(如 surf、mesh 等)。这个函数可以生成一个包含多个局部极大值和极小值的平滑曲面,非常适合用于展示三维图形的特性和功能。

peaks 的基本用法

peaks 函数有多种调用方式,可以生成不同尺寸的矩阵或直接绘制图形:

  1. peaks: 直接绘制 peaks 函数的三维曲面图。
  2. peaks(n): 生成一个 n×n 的矩阵,表示 peaks 函数在规则网格上的值。
  3. peaks(X,Y): 在指定的网格坐标 X 和 Y 上计算 peaks 函数的值。
  4. [X,Y,Z] = peaks(…): 返回网格坐标矩阵 X、Y 和对应的函数值矩阵 Z。
peaks数学表达式

在这里插入图片描述

实操训练
% 生成一个 20×20 的 peaks 矩阵
Z = peaks(20
)
;

在这里插入图片描述

%在指定的网格坐标上计算 peaks 函数的值
[X, Y] = meshgrid(-3:0.2:3
, -3:0.2:3
)
;
Z = peaks(X, Y)
;

因为步长为0.2,从-1到0一共有6个值,因为带上端点
在这里插入图片描述

指定的网格坐标上计算 peaks 函数的值,步长为0.2,所以从-3到3一共有31个值为31*31的矩阵
在这里插入图片描述

返回网格坐标矩阵和函数值矩阵得到49*49

%返回网格坐标矩阵和函数值矩阵
[X, Y, Z] = peaks;

在这里插入图片描述在这里插入图片描述
在这个例子中,peaks 函数默认生成一个 49×49 的网格。这是因为 peaks 函数在没有指定输入参数时,会使用默认的网格参数,即生成一个 49×49 的网格。

自定义网格大小

可以通过指定输入向量来控制网格的大小。例如:

n = 20
;
% 指定网格的大小为 20×20
[X, Y, Z] = peaks(n)
;

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

使用自定义网格

还可以使用 meshgrid 函数来自定义网格的坐标:

x = linspace(-3
, 3
, 49
)
;
% 生成包含49个点的向量,范围从-3到3
y = linspace(-3
, 3
, 49
)
;
[X, Y] = meshgrid(x, y)
;
% 生成49×49的网格坐标矩阵
Z = peaks(X, Y)
;
% 计算peaks函数在该网格上的值

mesh

在这里插入图片描述

[X,Y]=meshgrid(-3:1/8:3
)
;
Z=peaks(X,Y)
;
mesh(X,Y,Z)
;

mesh作图

mesh作peaks图

MATLAB代码对齐快捷键Ctrl+i
墨西哥帽
x = -8 : 0.5 : 8
;
y = -8 : 0.5 : 8
;
[X,Y] = meshgrid(x,y)
;
r = sqrt(X.^2 + Y.^2
) + eps;
Z = sin(r) ./ r;
mesh(X,Y,Z)

在这里插入图片描述

墨西哥帽

其他作图命令

在这里插入图片描述

meshc

在这里插入图片描述

带等高线的山峰图
%%
n = 20
;
% 指定网格的大小为 20×20
[X, Y, Z] = peaks(n)
;
[X,Y]=meshgrid(-3:1/8:3
)
;
Z=peaks(X,Y)
;
meshc(X,Y,Z)
;

在这里插入图片描述

带等高线的墨西哥帽子
x = -8 : 0.5 : 8
;
y = -8 : 0.5 : 8
;
[X,Y] = meshgrid(x,y)
;
r = sqrt(X.^2 + Y.^2
) + eps;
Z = sin(r) ./ r;
meshc(X,Y,Z)
;
title('墨西哥帽'
)
xlabel('x'
)
ylabel('y'
)
zlabel('z'
)

在这里插入图片描述

meshz

在这里插入图片描述

屏蔽边界面的山峰图

在这里插入图片描述

屏蔽边界面的墨西哥帽子
x = -8 : 0.5 : 8
;
y = -8 : 0.5 : 8
;
[X,Y] = meshgrid(x,y)
;
r = sqrt(X.^2 + Y.^2
) + eps;
Z = sin(r) ./ r;
meshz(X,Y,Z)
;
title('墨西哥帽'
)
xlabel('x'
)
ylabel('y'
)
zlabel('z'
)

在这里插入图片描述

坐标轴控制: axis

在这里插入图片描述

eps

在这里插入图片描述

eps的作用

在 MATLAB 中,eps 表示的是机器精度,即 MATLAB 中浮点数的最大相对精度。它通常用于防止除以零的情况,特别是在涉及分母可能非常接近零的数值计算中。

eps 的作用和意义
  1. 数值计算中的保护机制:在数值计算中,如果分母非常接近零,会导致结果数值不稳定甚至出现无穷大(Inf)或 NaN(Not a Number)。通过在分母中加上 eps,可以确保分母不会为零或非常接近零,从而避免数值计算中的错误或不稳定结果。
  2. 机器精度:eps 的值约为 2.2204 ∗ 10 − 16 2.2204*10^{-16} 2.22041016 ,它是 MATLAB 中浮点数的最小差值,用于表示两个相邻浮点数之间的最小间隔。
  3. 在这里插入图片描述
方式优点缺点
mesh(X,Y,Z)明确指定 X 和 Y 网格,坐标轴显示准确参数较多,需要额外计算 X 和 Y 网格
mesh(Z)参数少,代码简洁坐标轴显示可能不准确,依赖默认行为
http://www.hskmm.com/?act=detail&tid=24969

相关文章:

  • 概率期望dp 复习笔记
  • 2025.10
  • PCIe扫盲——物理层逻辑部分基础(一)
  • 仅需3%训练数据的文本归一化技术
  • 价值原语博弈协议:价值原语共识锚定原则
  • 实用指南:工作流引擎-16-开源审批流项目之 整合Flowable官方的Rest包
  • 25fall做题记录-October - Amy
  • 嗯嗯
  • PCIe扫盲——AckNak 机制详解(二)
  • ASP.NET Core SignalR 身份认证集成指南(Identity + JWT) - 详解
  • utorrent 2.2.1
  • 2025热缩管厂家 TOP 企业品牌推荐排行榜,氟橡胶,双壁,线缆标识,防滑花纹,DR 耐油橡胶,PVDF,标识,航插用,军用热缩管公司推荐!
  • 市场交易反心理特征之八:劣仓驱逐良仓
  • 做题笔记18
  • 2025桩基检测机构最新企业咨询服务推荐排行榜,海上桩基检测,水上桩基检测服务推荐这十家公司!
  • 算法坑点
  • [省选联考 2025] 图排列 题解
  • Windows下安装并采用kubectl查看K8S日志
  • 实用指南:UV 包管理工具:替代 pip 的现代化解决方案
  • C/C++与Java、Python、Go在各个阶段的区别
  • 古典密码之凯撒密码
  • vi/vim文本编辑器
  • AI一周资讯 250926-251005
  • B3869 [GESP202309 四级] 进制转换-题解
  • 物理
  • springcloud gateway Error creating bean with name bootstrapImportSelectorConfiguration:
  • 完整教程:PyCharm接入DeepSeek,实现高效AI编程
  • Nginx的核心功能及实现
  • 2025焚烧炉厂家权威推荐,技术实力与市场口碑深度解析
  • 高考加油!UI界面生成器! - 教程