pandas.Series.plot.bar #

系列.情节. bar ( x = None , y = None , ** kwargs ) [来源] #

垂直条形图。

条形图是用矩形条来显示分类数据的图,条形的长度与它们所代表的值成比例。条形图显示离散类别之间的比较。该图的一个轴显示正在比较的特定类别,另一轴表示测量值。

参数
x标签或位置,可选

允许绘制一列与另一列的图。如果未指定,则使用 DataFrame 的索引。

y标签或位置,可选

允许绘制一列与另一列的图。如果未指定,则使用所有数字列。

颜色str、类似数组或 dict,可选

DataFrame 每一列的颜色。可能的值为:

  • 由名称、RGB 或 RGBA 代码引用的单一颜色字符串,

    例如“红色”或“#a98d19”。

  • 按名称、RGB 或 RGBA 引用的颜色字符串序列

    代码,它将递归地用于每一列。例如 ['green','yellow'] 每列的条形将交替填充为绿色或黄色。如果只有一列要绘制,则仅使用颜色列表中的第一种颜色。

  • 形式为 {column name color} 的字典,以便每一列都将是

    相应地着色。例如,如果您的列名为ab ,则传递 {'a': 'green', 'b': 'red'} 会将a列的条形颜色显示为绿色,将b列的条形颜色显示为红色。

**夸格

其他关键字参数记录在 中 DataFrame.plot()

返回
matplotlib.axes.Axes 或 np.ndarray 其中

当 时,返回一个 ndarray,matplotlib.axes.Axes 每列一个subplots=True

也可以看看

DataFrame.plot.barh

单杠图。

DataFrame.plot

绘制 DataFrame 的图。

matplotlib.pyplot.bar

使用 matplotlib 绘制条形图。

例子

基本情节。

>>> df = pd.DataFrame({'lab':['A', 'B', 'C'], 'val':[10, 30, 20]})
>>> ax = df.plot.bar(x='lab', y='val', rot=0)

将整个数据框绘制为条形图。每列都分配有不同的颜色,每行沿水平轴嵌套在一个组中。

>>> speed = [0.1, 17.5, 40, 48, 52, 69, 88]
>>> lifespan = [2, 8, 70, 1.5, 25, 12, 28]
>>> index = ['snail', 'pig', 'elephant',
...          'rabbit', 'giraffe', 'coyote', 'horse']
>>> df = pd.DataFrame({'speed': speed,
...                    'lifespan': lifespan}, index=index)
>>> ax = df.plot.bar(rot=0)

绘制 DataFrame 的堆积条形图

>>> ax = df.plot.bar(stacked=True)

可以使用 来按列分割该图,而不是嵌套 subplots=True。在本例中,返回numpy.ndarraya 。matplotlib.axes.Axes

>>> axes = df.plot.bar(rot=0, subplots=True)
>>> axes[1].legend(loc=2)  

如果您不喜欢默认颜色,您可以指定每列的着色方式。

>>> axes = df.plot.bar(
...     rot=0, subplots=True, color={"speed": "red", "lifespan": "green"}
... )
>>> axes[1].legend(loc=2)  

绘制单列。

>>> ax = df.plot.bar(y='speed', rot=0)

仅绘制 DataFrame 的选定类别。

>>> ax = df.plot.bar(x='lifespan', rot=0)