许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  MATLAB绘图函数对比:surf、mesh、pcolor的联系与区别

MATLAB绘图函数对比:surf、mesh、pcolor的联系与区别

阅读数 21
点赞 0
article_banner

surf:


surf (X,Y,Z) 创建一个三维曲面图,它是一个具有实心边颜色和实心面颜色的三维曲面。

   该 函数 将矩阵 Z 中的值绘制为 X 和 Y 定义的 x-y 平面中网格上方的高度。表面的颜色根据 Z 指定的高度而变化。

   surf(X,Y,Z,C) 额外指定表面颜色。

surf(Z) 创建一个曲面图,并使用 Z 中元素的列和行索引作为 x 和 y 坐标。

   surf(Z,C) 指定表面颜色。

surf(ax,___) 绘制到由 ax 指定的坐标区,而不是当前坐标区。将坐标区指定为第一个输入参数。

surf(___,Name,Value) 使用一个或多个名称-值对参数指定表面属性。例如,'FaceAlpha',0.5 创建一个半透明曲面。

s = surf(___) 返回图表表面对象。创建曲面后,使用 s 对其进行修改。有关属性列表,请参阅表面属性。

mesh:


mesh(X,Y,Z) 创建一个网格图,它是一个具有实心边颜色但没有面颜色的三维曲面

   该函数将矩阵 Z 中的值绘制为 X 和 Y 定义的 x-y 平面中网格上方的高度。边缘颜色根据 Z 指定的高度而变化。

   mesh(Z) 创建一个网格图,并使用 Z 中元素的列和行索引作为 x 和 y 坐标。

mesh(Z,C) 还指定边缘的颜色。

   mesh(___,C) 还指定边缘的颜色。

mesh(ax,___) 绘制到由 ax 指定的坐标区,而不是当前坐标区。将坐标区指定为第一个输入参数。

mesh(___,Name,Value) 使用一个或多个名称-值对参数指定曲面属性。例如,'FaceAlpha',0.5 创建一个半透明的网格图。

pcolor:

pcolor(C) 使用矩阵 C 中的值创建伪彩色图。伪彩色图将矩阵 数据 显示为彩色单元格(称为面)的数组。
MATLAB将此图创建为 x-y 平面。表面由对应于面的角(或顶点)的 x 和 y 坐标网格定义。网格覆盖区域 X=1:n 和 Y=1:m,其中 [m,n] = size (C)。矩阵 C 指定顶点的颜色。每个面的颜色取决于其四个周围顶点之一的颜色。在四个顶点中,x-y 网格中最先出现的那个决定了面的颜色。

pcolor(X,Y,C) 指定顶点的 x 和 y 坐标。 C 的大小必须与 x-y 坐标网格的大小相匹配。例如,如果 X 和 Y 定义一个 m×n 网格,则 C 必须是一个 m×n 矩阵。

举例子前先看下 meshgrid 函数:

meshgrid:创建二维网格坐标,例子中会用到

   [X,Y] = meshgrid(x,y) 根据向量 x 和 y 中包含的 坐标返回 二维网格坐标。

   X 是一个矩阵,其中每一行都是复制向量x,Y 是一个矩阵,其中每一列都是复制向量y。

   由坐标 X 和 Y 表示的网格:x作为X轴坐标,y作为Y轴坐标

[X,Y] = meshgrid(x) 与 [X,Y] = meshgrid(x,x) 相同,返回网格大小为 length(x)-by-length(x) 的方形网格坐标。

[X,Y,Z] = meshgrid(x,y,z) 返回由向量 x、y 和 z 定义的 3-D 网格坐标。由 X、Y 和 Z 表示的网格的大小为 length(y)-by-length(x)-by-length(z)。

[X,Y,Z] = meshgrid(x) 与 [X,Y,Z] = meshgrid(x,x,x) 相同,返回 3-D 网格坐标,网格大小为 length(x)-by-length (x)-乘长(x)。

举例1:

[X,Y] = meshgrid(-5:.5:5); %生成长和宽都是[-5,5]的网格坐标Z = Y.*sin(X) - X.*cos(Y); figure(1);set(gcf, 'unit', 'centimeters', 'position', [10 5 28 20]); subplot(221)mesh(X,Y,Z)title('例1 mesh结果') subplot(222)surf(X,Y,Z)title('例1 surf结果') subplot(223)surf(X,Y,Z)view(0,90)title('例1 surf俯视看x-y平面结果') subplot(224)pcolor(X,Y,Z)title('例1 pcolor结果')

结果:

举例2:

[X,Y] = meshgrid(-8:.5:8);R = sqrt(X.^2 + Y.^2) + eps;Z = sin(R)./R; figure(2);set(gcf, 'unit', 'centimeters', 'position', [10 5 28 20]); subplot(221)mesh(X,Y,Z)title('例2 mesh结果') subplot(222)surf(X,Y,Z)title('例2 surf结果') subplot(223)surf(X,Y,Z)view(0,90)title('例2 surf俯视看x-y平面结果') subplot(224)pcolor(X,Y,Z)title('例2 pcolor结果')

结果:

区别和联系:

从以上例子可以看出:



   mesh生成一个带颜色的网格图,网格线的颜色和其值的大小有关

   surf生成一个带颜色的曲面图,相当于对mesh生成的网格图中每个网格填充颜色,颜色和其值的大小有关

pcolor(X,Y,Z)相当于:surf(X,Y,Z),view(0,90)。即俯视看surf生成的三维曲面的x-y平面


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空