我正在使用以下代码绘制条形图:
import matplotlib.pyplot as pls
my_df.plot(x='my_timestampe', y='col_A', kind='bar')
plt.show()
剧情不错。但是,我想通过在图上添加 3 列来改进图表:“col_A”、“col_B”和“col_C”。如下图示例:
我希望 col_A
在 x 轴上方显示为蓝色,col_B
在 x 轴下方显示为红色,col_C
在上方显示为绿色x 轴。这在 matplotlib 中可能吗?如何进行更改以绘制所有三列?谢谢!
最佳答案
您可以通过向 plot
提供列名列表来一次绘制多个列。的y
争论。
df.plot(x="X", y=["A", "B", "C"], kind="bar")
这将产生一个图表,其中条形图彼此相邻。
为了使它们重叠,您需要调用 plot
多次,并提供要绘制的轴作为参数ax
到剧情。
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
y = np.random.rand(10,4)
y[:,0]= np.arange(10)
df = pd.DataFrame(y, columns=["X", "A", "B", "C"])
ax = df.plot(x="X", y="A", kind="bar")
df.plot(x="X", y="B", kind="bar", ax=ax, color="C2")
df.plot(x="X", y="C", kind="bar", ax=ax, color="C3")
plt.show()
关于python - matplotlib:在条形图上绘制多列 Pandas 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42128467/