Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

waterfall

瀑布图

  • Waterfall plot

说明

示例

waterfall(X,Y,Z) 创建瀑布图,这是一种沿 y 维度有部分帷幕的网格图。这会产生一种“瀑布”效果。该函数将矩阵 Z 中的值绘制为由 XY 定义的 x-y 平面中的网格上方的高度。边颜色因 Z 指定的高度而异。

示例

waterfall(X,Y,Z,C) 进一步指定边的颜色。

waterfall(Z) 创建一个瀑布图,并将 Z 中元素的列索引和行索引用作 x 坐标和 y 坐标。

waterfall(Z,C) 进一步指定边的颜色。

waterfall(ax,___) 将图形绘制到 ax 指定的坐标区中,而不是当前坐标区中。指定坐标区作为第一个输入参数。此参数可用于上述任一输入语法。

示例

p = waterfall(___) 返回补片对象。在创建瀑布图后,使用 p 对其进行修改。有关属性列表,请参阅 Patch 属性

示例

全部折叠

创建三个相同大小的矩阵。然后将它们绘制为一个瀑布图。网格图使用 Z 确定高度和颜色。

[X,Y] = meshgrid(-3:.125:3);
Z = peaks(X,Y);
waterfall(X,Y,Z)

Figure contains an axes object. The axes object contains an object of type patch.

通过包含第四个矩阵输入 C 来指定瀑布图的颜色。瀑布图使用 Z 表示高度,C 表示颜色。向图中添加颜色栏以显示 C 中的数据值如何对应于颜色图中的颜色。

[X,Y] = meshgrid(-3:.125:3);
Z = peaks(X,Y);
C = gradient(Z);
waterfall(X,Y,Z,C)
colorbar

Figure contains an axes object. The axes object contains an object of type patch.

创建一个瀑布图。要允许进一步修改,请将补片对象赋给变量 p

[X,Y] = meshgrid(-5:.5:5);
Z = Y.*sin(X) - X.*cos(Y);
p = waterfall(X,Y,Z)

Figure contains an axes object. The axes object contains an object of type patch.

p = 
  Patch with properties:

    FaceColor: [1 1 1]
    FaceAlpha: 1
    EdgeColor: 'flat'
    LineStyle: '-'
        Faces: [21x26 double]
     Vertices: [546x3 double]

  Use GET to show all properties

在创建瀑布图之后可使用 p 访问并修改其属性。例如,通过设置 EdgeColor 属性来更改图边的颜色。

p.EdgeColor = 'b';

Figure contains an axes object. The axes object contains an object of type patch.

通过转置输入参数,沿 x 维度(而不是 y 维度)显示部分帷幕。

[X,Y] = meshgrid(-3:.125:3);
Z = peaks(X,Y);
waterfall(X',Y',Z')

Figure contains an axes object. The axes object contains an object of type patch.

输入参数

全部折叠

x 坐标,指定为大小与 Z 相同的矩阵或长度为 n 的向量(当 Z 是 m×n 矩阵时)。如果未指定 XY 的值,waterfall 将使用向量 (1:n)(1:m)

补片对象的 XData 属性存储 x 坐标。

示例: X = 1:10

示例: X = [1 2 3; 1 2 3; 1 2 3]

示例: [X,Y] = meshgrid(-5:0.5:5)

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical

y 坐标,指定为大小与 Z 相同的矩阵或长度为 m 的向量(当 Z 是 m×n 矩阵时)。如果未指定 XY 的值,waterfall 将使用向量 (1:n)(1:m)

补片对象的 YData 属性存储 y 坐标。

示例: Y = 1:10

示例: Y = [1 1 1; 2 2 2; 3 3 3]

示例: [X,Y] = meshgrid(-5:0.5:5)

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical

z 坐标,指定为矩阵。Z 必须有至少两行两列。

Z 指定在每个 xy 坐标处的瀑布图的高度。如果不指定颜色,则 Z 还用于指定图边颜色。

补片对象的 ZData 属性存储 z 坐标。

示例: Z = [1 2 3; 4 5 6]

示例: Z = sin(x) + cos(y)

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical

颜色索引数组,指定为由颜色图索引组成的 m×n 矩阵,其中 Z 是 m×n 的大小。对于瀑布图上的每个网格点,C 指示颜色图中的一种颜色。补片对象的 CDataMapping 属性控制 C 中的值如何对应颜色图中的颜色。

补片对象的 CData 属性存储颜色数组。如果要对图着色进行更多控制,请使用 FaceColorEdgeColor 属性。

目标坐标区,指定为 Axes 对象。如果未指定坐标区,则 waterfall 在当前坐标区中绘图。

提示

  • 要以列(而不是行)形式分析数据,请调用带转置参数的 waterfall

    [X,Y] = meshgrid(-3:.125:3);
    Z = peaks(X,Y);
    waterfall(X',Y',Z')

  • 要创建网格曲面对象而不是补片对象,请使用 meshz 函数。要创建类似瀑布图的图,请将曲面的 MeshStyle 属性设置为 'Row'

算法

  • 坐标区的 XLimYLimZLim 属性存储 x、y 和 z 轴的范围。这些范围基于 XYZ 输入参数的范围。

  • 坐标区的 CLim 属性确定颜色在 C 范围内的分布。有关详细信息,请参阅控制颜色图范围

扩展功能

版本历史记录

在 R2006a 之前推出