Python 宽度错误的条形图
我想为包含多个类别的dataframe创建一个条形图,每个类别使用不同的颜色。下面是我的简化代码和结果图。顶部子图是一种颜色的规则条形图,底部子图是颜色编码的,但条形图的宽度混乱。有什么建议吗?谢谢Python 宽度错误的条形图,python,matplotlib,Python,Matplotlib,我想为包含多个类别的dataframe创建一个条形图,每个类别使用不同的颜色。下面是我的简化代码和结果图。顶部子图是一种颜色的规则条形图,底部子图是颜色编码的,但条形图的宽度混乱。有什么建议吗?谢谢 import random import pandas as pd import matplotlib.pyplot as plt df = pd.DataFrame({'Cat': [1, 1, 2, 2, 2, 2, 3, 3, 4, 4, 4, 4],
import random
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({'Cat': [1, 1, 2, 2, 2, 2, 3, 3, 4, 4, 4, 4],
'A': [2, 3, 6, 7, 9, 10, 15, 18, 22, 23, 24, 25],
'B': random.sample(range(1, 20), 12)})
fig = plt.figure(figsize=(15, 15/2.3))
ax = plt.subplot(2, 1, 1)
plt.bar(df.A, df.B)
plt.xlim(0, 30)
ax = plt.subplot(2, 1, 2)
for cat in df.Cat.unique():
df_ = df.loc[(df.Cat==cat), :]
plt.bar(df_.A, df_.B, width=0.5)
plt.xlim(0, 30)
plt.show()
使用numpy数组进行打印,
plt.bar(df_uu.A.values,df_uu.B.values,width=0.5)
。在底部打印上,您不指定条形宽度,而在底部打印中指定条形宽度。那个么,你们到底是什么意思,酒吧的宽度是乱七八糟的?谢谢你们的重要性!我不知道它会有这么大的不同Solvaou:问题是底部的图形应该与顶部的图形相同,只是颜色不同(除了顶部的默认条形宽度),我看到了,但它的工作原理与我预期的一样。matplotlib
可能有问题?您使用的是哪个版本(请使用matplotlib.\uuuuu version\uuuuuu
)?