Pandas:如何在条形图上绘制多列


您可以使用以下语法在单个条形图上绘制 pandas DataFrame 的多列:

 df[[' x ', ' var1 ', ' var2 ', ' var3 ']]. plot (x=' x ', kind=' bar ')

x列将用作 x 轴变量, var1var2var3将用作 y 轴变量。

以下示例展示了如何在实践中使用此功能。

示例 1:在条形图上绘制柱形图

以下代码显示如何在条形图上绘制三列,指定名为period的列应用作 x 轴上的变量:

 import pandas as pd
import matplotlib. pyplot as plt

#create fake data
df = pd. DataFrame ({' period ': [1, 2, 3, 4, 5, 6, 7, 8],
                   ' A ': [9, 12, 15, 14, 19, 23, 25, 29],
                   ' B ': [5, 7, 7, 9, 12, 9, 9, 14],
                   ' C ': [5, 4, 7, 13, 15, 15, 18, 31]})

#plot columns on bar chart
df[[' period ', ' A ', ' B ', ' C ']]. plot (x=' period ', kind=' bar ') 

Pandas 在条形图中绘制多列

我们还可以选择仅绘制某些列,例如AB

 df[[' period ', ' A ', ' B ']]. plot (x=' period ', kind=' bar ') 

示例 2:在堆积条形图上绘制柱形图

要创建堆积条形图,只需在绘图函数中指定stacked=True即可:

 import pandas as pd
import matplotlib. pyplot as plt

#create fake data
df = pd. DataFrame ({' period ': [1, 2, 3, 4, 5, 6, 7, 8],
                   ' A ': [9, 12, 15, 14, 19, 23, 25, 29],
                   ' B ': [5, 7, 7, 9, 12, 9, 9, 14],
                   ' C ': [5, 4, 7, 13, 15, 15, 18, 31]})

#create stacked bar chart
df[[' period ', ' A ', ' B ', ' C ']]. plot (x=' period ', kind=' bar ', stacked= True ) 

带有 pandas 列的堆积条形图

要更改条形的颜色,只需使用颜色参数,如下所示:

 df[[' period ', ' A ', ' B ', ' C ']]. plot (x=' period ', kind=' bar ', stacked= True ,
color=[' red ', ' pink ', ' gold ']) 

其他资源

如何从 Pandas DataFrame 绘制多个系列
如何从 Pandas DataFrame 创建点云

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注