matplotlib.axes.Axes.barh#

Axes.barh(y, width, height=0.8, left=None, *, align='center', data=None, **kwargs)[source]#

绘制水平条形图。

条形图定位在 y 处,并具有给定的 alignment。它们的尺寸由 widthheight 给出。水平基线为 left(默认为 0)。

许多参数可以接受一个适用于所有条形图的单一值,也可以接受一个序列值,每个条形图一个。

参数:
y浮点数或类数组

条形图的y坐标。另请参阅 align,了解条形图与坐标的对齐方式。

条形图通常用于分类数据,即条形图下方的字符串标签。您可以直接向 y 提供字符串列表。barh(['A', 'B', 'C'], [1, 2, 3]) 通常比 barh(range(3), [1, 2, 3], tick_label=['A', 'B', 'C']) 更短、更方便。只要名称是唯一的,它们是等效的。明确的 tick_label 标记会按照给定顺序绘制名称。但是,当分类 y 数据中存在重复值时,这些值会映射到相同的数值 y 坐标,因此对应的条形图会相互堆叠。

width浮点数或类数组

条形图的宽度。

请注意,如果 left 具有单位(例如 datetime),则 width 应以与 left 值之差(例如 timedelta)为单位。

height浮点数或类数组,默认值:0.8

条形图的高度。

请注意,如果 y 具有单位(例如 datetime),则 height 应以围绕 y 值差异(例如 timedelta)的单位表示。

left浮点数或类数组,默认值:0

条形图左侧的x坐标。

请注意,如果 left 具有单位,则x轴将获得适用于这些单位(例如日期或分类)的定位器(Locator)和格式化器(Formatter)。

align{'center', 'edge'},默认值:'center'

基准与 y 坐标的对齐方式*

  • 'center':将条形图中心对齐到 y 位置。

  • 'edge':将条形图的底部边缘与 y 位置对齐。

若要将条形图对齐到顶部边缘,请传递负值 height 并设置 align='edge'

返回:
BarContainer

包含所有条形图和可选误差线的容器。

其他参数:
color颜色颜色 列表,可选

条形图面的颜色。

edgecolor颜色颜色 列表,可选

条形边缘的颜色。

linewidth浮点数或类数组,可选

条形边缘的宽度。如果为0,则不绘制边缘。

tick_label字符串或字符串列表,可选

条形图的刻度标签。默认值:None(使用默认的数字标签。)

label字符串或字符串列表,可选

结果 BarContainer 会附加一个标签,作为整个数据集的标签。如果提供的是列表,则其长度必须与 y 相同,并标记各个条形。重复的标签不会去重,会导致重复的标签条目,因此最好在条形图样式也不同时使用此选项(例如,通过将列表传递给 color)。

xerr, yerr浮点数或形状为(N,)或形状为(2, N)的类数组,可选

如果不为 None,则在条形图尖端添加水平/垂直误差线。这些值是相对于数据的 +/- 大小

  • 标量:所有条形图的对称 +/- 值

  • 形状(N,):每个条形图的对称 +/- 值

  • 形状(2, N):每个条形图的单独 - 和 + 值。第一行包含较低误差,第二行包含较高误差。

  • None:无误差条。(默认)

有关 xerryerr 用法的示例,请参阅 指定误差线的不同方法

ecolor颜色颜色 列表,默认值:'black'

误差线的线条颜色。

capsize浮点数,默认值:rcParams["errorbar.capsize"] (默认值:0.0)

误差线帽的长度(以点为单位)。

error_kw字典,可选

关键字参数字典,将传递给 errorbar 方法。此处定义的 ecolorcapsize 值优先于独立的关键字参数。

log布尔值,默认值:False

如果为 True,则将x轴设置为对数刻度。

data可索引对象,可选

如果给定,所有参数也接受字符串 s,如果 sdata 中的键,则将其解释为 data[s]

**kwargsRectangle 属性

属性

描述

agg_filter

一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量

alpha

浮点数或 None

angle

未知

animated

布尔值

antialiasedaa

布尔值或 None

bounds

(左,下,宽,高)

capstyle

CapStyle 或 {'butt', 'projecting', 'round'}

clip_box

BboxBase 或 None

clip_on

布尔值

clip_path

Patch 或 (Path, Transform) 或 None

color

color

edgecolorec

颜色 或 None

facecolorfc

颜色 或 None

figure

FigureSubFigure

fill

布尔值

gid

str

hatch

{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}

hatch_linewidth

未知

height

未知

in_layout

布尔值

joinstyle

JoinStyle 或 {'miter', 'round', 'bevel'}

label

object

linestylels

{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}

linewidthlw

浮点数或 None

mouseover

布尔值

path_effects

list of AbstractPathEffect

picker

None 或 布尔值 或 浮点数 或 可调用对象

rasterized

布尔值

sketch_params

(scale: 浮点数, length: 浮点数, randomness: 浮点数)

snap

布尔值或 None

transform

变换

url

str

visible

布尔值

width

未知

x

未知

xy

(浮点数, 浮点数)

y

未知

zorder

浮点数

另请参阅

bar

绘制垂直条形图。

备注

可以通过为每个条形传递单独的 left 值来创建堆叠条形图。请参阅 作为水平条形图的离散分布

使用 matplotlib.axes.Axes.barh 的示例#

带标签的条形图

带标签的条形图

水平条形图

水平条形图

离散分布作为水平条形图

离散分布作为水平条形图

多个直方图并排

多个直方图并排

绘图的生命周期

绘图的生命周期

使用 Matplotlib 制作动画

使用 Matplotlib 制作动画