我有两个平行的数据系列,为此,我想制作一个多列的条形图。我知道这个想法是通过增加x轴的宽度来移动每一列,但是如果该轴由字符串(分类变量)组成怎么办?
假设这是一个熊猫数据框df
:
+----------+------+------+
| Category | Val1 | Val2 |
+----------+------+------+
| A | 1 | 3 |
| B | 4 | 6 |
| C | 6 | 7 |
| D | 3 | 9 |
+----------+------+------+
显然,这将引发错误:
import matplotlib.pyplot as plt
width = 0.4
fig, ax = plt.subplots()
ax.bar(x=df['Category'], height=df['Val1'], width=width)
ax.bar(x=df['Category']+width, height=df['Val2'], width=width)
您不能在字符串中添加数字。
所以,获得这样的解决方案是什么?
您尝试过:
df.plot.bar(x='Category')