迹忆客 专注技术分享

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

MATLAB 瀑布图

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

本教程将讨论使用 MATLAB 的 waterfall() 函数创建瀑布图。


MATLAB 瀑布图

瀑布图就像网格图; 它在 y 轴上也有窗帘,在情节上创造了瀑布效果。 我们可以使用 MATLAB 的 waterfall() 函数来创建 3D 瀑布图。

waterfall() 函数具有如下所示的六种语法。

waterfall(x,y,z)
waterfall(x,y,z,color)
waterfall(z)
waterfall(z,c)
waterfall(axes,___)
obj = waterfall(___)

第一个语法将在由 x 和 y 变量指定的网格上创建瀑布图,边缘的高度将从变量 z 中获取。 默认情况下,waterfall() 函数将使用 z 变量为图中出现的边分配颜色。

输入变量 x 和 y 应该是一个矩阵或向量,变量 z 应该是一个矩阵,它应该有两行和两列。 如果 x 和 y 是矩阵,它们的大小应该等于变量 z 的大小。

第二种语法用于设置边缘的颜色,它将替换边缘的默认颜色。 颜色应该是一个与边数大小相同的矩阵,并且包含绘图中所有边的颜色。

例如,让我们使用 waterfall() 函数创建一些随机数据的瀑布图。 请参阅下面的代码。

clc
clear

[x,y] = meshgrid(-6:.3:6);
z = x.*cos(y) + y.*sin(x);
waterfall(x,y,z)

输出:

simple waterfall plot

我们在上面的代码中使用了 meshgrid() 来创建一个统一的网格。 边的颜色根据矩阵 z 分配。

我们可以在 waterfall() 函数之后使用 colorbar 命令,它将沿着瀑布图显示一个颜色条,可以用来查看哪种颜色属于哪个值。

第三种语法将根据变量 z 的高度创建一个瀑布图,它将从 z 矩阵的索引中获取网格值或 x 和 y 的值。 颜色也将从 z 矩阵中获取。

第四种语法可以指定矩阵 c 中矩阵 z 中存在的边的颜色,以便 c 的大小等于 z 的大小。 第五个语法将用于在 axes 变量指定的轴而不是图的当前轴上创建瀑布图。

第六个语法用于创建瀑布图的对象,可用于显示和修改瀑布图的属性。 例如,让我们使用上面的示例代码创建一个 waterfall() 函数的对象并检查其属性。

请参阅下面的代码。

clc
clear

[x,y] = meshgrid(-6:.3:6);
z = x.*cos(y) + y.*sin(x);
p = waterfall(x,y,z);

输出:

p =

  Patch with properties:

    FaceColor: [1 1 1]
    FaceAlpha: 1
    EdgeColor: 'flat'
    LineStyle: '-'
        Faces: [41×46 double]
     Vertices: [1886×3 double]

上面的输出显示了瀑布图的一些属性,我们可以通过单击输出中的 Path 单词来查看所有属性。 我们可以使用函数对象和属性名称更改瀑布图的属性。

第一个属性,上面显示的 FaceColor,表示边缘包围区域的颜色,默认设置为白色,但我们可以使用颜色名称或 RGB 三元组值将其更改为任何颜色。

EdgeColor 属性表示图上边缘或点的颜色,默认情况下使用矩阵 z 的值分配这些颜色,但我们也可以像更改 FaceColor 属性一样更改此属性。

FaceAlpha 和 EdgeAlpha 属性用于设置图中出现的面和边的透明度,默认情况下设置为 1,但我们可以将其设置为 0 到 1 之间的任何值。

LineStyle 属性设置用于连接图中各点的线条样式,默认情况下,它的值设置为实线,如 -,但我们可以使用 -- 将其设置为虚线,点划线使用 - .,虚线使用 :,无线使用 none。

LineWidth 属性用于设置绘图中使用的线条的宽度,默认情况下,其值设置为 0.5,但我们可以将其值设置为任意正整数。

Marker 属性用于设置用于表示图上点的标记,默认情况下,其值设置为无,但我们可以使用 o 将其设置为圆形,使用 d 设置为菱形,使用 p 设置为五边形 , 等等。

我们可以使用 MarkerSize 属性来设置标记大小,默认情况下设置为 5,并将其设置为任意正值。

我们可以使用 MarkerEdgeColor 属性设置标记边缘线的颜色,使用 MarkerFaceColor 设置标记的填充颜色,用于给标记填充颜色,默认情况下,其值设置为无。

例如,让我们重复上面的例子,改变上面提到的属性。 请参阅下面的代码。

clc
clear

[x,y] = meshgrid(-6:1:6);
z = x.*cos(y) + y.*sin(x);
p = waterfall(x,y,z);
p.FaceColor = 'white';
p.EdgeColor = 'red';
p.LineStyle = '-.';
p.LineWidth = 1;
p.Marker = 'd';
p.MarkerSize = 10;
p.MarkerEdgeColor = 'green';
p.MarkerFaceColor = 'yellow';

输出:

properties of waterfall plot

在上面的代码中,我们更改了瀑布图的一些属性,我们还可以更改许多其他属性。

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

本文地址:

相关文章

在 MATLAB 中注释多行

发布时间:2023/04/23 浏览次数:111 分类:MATLAB

可以使用注释块方法或 MATLAB 编辑器在 MATLAB 中注释多行。

MATLAB 最大索引

发布时间:2023/04/23 浏览次数:192 分类:MATLAB

在本教程中,我们将讨论如何使用 MATLAB 中的 max() 函数从数组及其索引中查找最大值。

MATLAB 索引超出矩阵尺寸

发布时间:2023/04/23 浏览次数:103 分类:MATLAB

要解决索引超出矩阵索引的问题,请检查你要获取或替换数据的索引。

MATLAB 检查变量类型

发布时间:2023/04/23 浏览次数:92 分类:MATLAB

在本教程中,我们将讨论如何使用 MATLAB 中的 class() 和 whos 函数检查给定变量的类型。

MATLAB vs Octave

发布时间:2023/04/23 浏览次数:74 分类:MATLAB

我们可以说 Octave 是 MATLAB 的免费版本。

MATLAB MAT 文件

发布时间:2023/04/23 浏览次数:89 分类:MATLAB

可以使用 MAT 文件在 MATLAB 中存储和加载格式化的数据。

MATLAB asv 文件

发布时间:2023/04/23 浏览次数:180 分类:MATLAB

.asv 文件是 MATLAB 生成的自动保存文件,因此在计算机崩溃时你不会丢失数据。

MATLAB 三元运算符

发布时间:2023/04/23 浏览次数:130 分类:MATLAB

MATLAB 中没有三元运算符,因此你必须使用标准格式。

MATLAB & vs &&

发布时间:2023/04/23 浏览次数:134 分类:MATLAB

在 MATLAB 中,&是逻辑与运算符,&&也是表现出短路行为的逻辑运算符。

扫一扫阅读全部技术教程

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

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便