今天,带来Matlab中离散数据绘制水平三维条形图的函数bar3h。本文主要讲解bar3h函数在Matlab中的常见用法、语法说明、三维水平条形图的创建、三维水平条形图宽度的指定、三维水平条形图的分组样式、三维水平条形图的堆叠样式等。
下面,我们将开始详细的介绍bar3h函数的语法介绍,实例引用,结果展示。首先,我们给出 Matlab 中关于 bar3h 函数的帮助文本如下:
>> help bar3h
bar3h Horizontal 3-D bar graph.
bar3h(Y,Z) draws the columns of the M-by-N matrix Z as horizontal
3-D bars. The vector Y must be monotonically increasing or
decreasing.
bar3h(Z) uses the default value of Y=1:M. For vector inputs,
bar3h(Y,Z) or bar3h(Z) draws LENGTH(Z) bars. The colors are set by
the colormap.
bar3h(Y,Z,WIDTH) or BAR3(Z,WIDTH) specifies the width of the
bars. Values of WIDTH > 1, produce overlapped bars. The default
value is WIDTH=0.8
bar3h(...,'detached') produces the default detached bar chart.
bar3h(...,'grouped') produces a grouped bar chart.
bar3h(...,'stacked') produces a stacked bar chart.
bar3h(...,LINESPEC) uses the line color specified (one of 'rgbymckw').
bar3h(AX,...) plots into AX instead of GCA.
H = bar3h(...) returns a vector of handles to barseries objects.
Example:
subplot(1,2,1), bar3h(peaks(5))
subplot(1,2,2), bar3h(rand(5),'stacked')
常见用法
bar3h(Y)
bar3h(Z,Y)
bar3h(...,width)
bar3h(...,style)
bar3h(...,color)
bar3h(ax,...)
h = bar3h(...)
语法说明
bar3h 绘制三维水平条形图。
bar3h(Y) 绘制三维条形图,Y 中的每个元素对应一个条形图。如果 Y 是向量,则 z 轴的刻度范围是从 1 到 length(Y)。如果 Y 是矩阵,则 z 轴的刻度范围是从 1 到 Y 的行数。
bar3h(Z,Y) 在 Z 指定的位置绘制 Y 中各元素的条形图,其中 Z 是为水平条形定义 z 值的向量。z 值可以是非单调的,但不能包含重复值。如果 Y 是矩阵,则 Y 中位于同一行内的元素将出现在 z 轴上的相同位置。
bar3h(…,width) 设置条形宽度并控制组中各个条形的间隔。默认 width 为 0.8,条形之间有细小间隔。如果 width 为 1,则一个组内的条形将紧挨在一起。
bar3h(…,style) 指定条形的样式。style 是 ‘detached’、’grouped’ 或 ‘stacked’。显示的默认模式为 ‘detached’。
- ‘detached’ 在 x 方向上将 Y 中的每一行的元素显示为一个接一个的单独的块。
- ‘grouped’ 显示 n 组垂直条形,每组 m 个条形,其中 n 和 m 分别是 Y 的行数和列数。每组包含一个对应于 Y 中每列的条形。
- ‘stacked’ 为 Y 中的每行显示一个条形。条形长度是行中元素的总和。每个条形标记有多种颜色,不同颜色分别对应不同的元素,显示每行元素占总和的相对量。
bar3h(…,color) 使用 color 指定的颜色显示所有条形。例如,使用 ‘r’ 表示红色条形。可将 color 指定为下列值之一:’r’、’g’、’b’、’c’、’m’、’y’、’k’ 或 ‘w’。
bar3h(ax,…) 将图形绘制到 ax 坐标区中,而不是当前坐标区 (gca) 中。
h = bar3h(…) 返回由 Surface 对象组成的向量。如果 Y 是矩阵,则 bar3h 将为 Y 中的每一列创建一个 Surface 对象。
三维水平条形图的创建
加载数据集 count.dat,它会返回一个三列矩阵 count。将 Y 保存为 count 的前 10 行。
load count.dat
Y = count(1:10,:);
创建 Y 的三维水平条形图。默认情况下,样式为 detached。
figure
bar3h(Y)
三维水平条形图宽度的指定
加载数据集 count.dat,它会返回一个三列矩阵 count。将 Y 保存为 count 的前 10 行。
load count.dat;
Y = count(1:10,:);
创建 Y 的三维条形图,并将条形宽度设置为 0.5。
width = 0.5;
figure
bar3h(Y,width)
title('Width of 0.5')
三维水平条形图的分组样式
加载数据集 count.dat,它会返回一个三列矩阵 count。将 Y 保存为 count 的前 10 行。
load count.dat
Y = count(1:10,:);
创建 Y 的三维水平条形图,并将样式选项指定为 grouped。
figure
bar3h(Y,'grouped')
title('Grouped Style Option')
三维水平条形图的堆叠样式
加载数据集 count.dat,它会返回一个三列矩阵 count。将 Y 保存为 count 的前 10 行。
load count.dat
Y = count(1:10,:);
创建 Y 的三维水平条形图,并将样式选项指定为 stacked。
figure
bar3h(Y,'stacked')
title('Stacked Style Option')
转载文章,原文出处:MathWorks官网,由古哥整理发布
如若转载,请注明出处:https://iymark.com/articles/1024.html