【发布时间】:2021-06-16 19:08:38
【问题描述】:
我有一个大数据集,我有多个组,但是增加条形宽度无济于事,因为组的大小不同。可以看到11和12之间没有空格,我需要把每个组都单独绘制出来。
这是一个显示我的问题的示例。
import matplotlib.pyplot as plt
bar_width = 0.25
r = [8, 9, 10, 11, 12]
r1 = [(x) for x in r]
bars1 = [10,20, 40, 60, 80]
r = [1, 2, 8, 9, 10, 11, 12]
r2 = [(x + bar_width) for x in r]
bars2 = [5, 10,15, 20, 40, 60, 80]
bars3 = [ 12,23, 70, 94]
r = [4, 5, 11, 14]
r3 = [(x + bar_width * 2) for x in r]
bars4 = [ 60,120, 193]
r = [ 10, 11, 14]
r4 = [(x + bar_width * 3) for x in r]
r = [1, 2,3,4,5,6,7, 8, 9, 10, 11, 12]
r5 = [(x + bar_width * 4) for x in r]
bars5 = [3,5,23,14, 10, 20, 45,40,56, 60, 80,99]
plt.bar(r1, bars1, width=bar_width, align='center')
plt.bar(r2, bars2, width=bar_width, align='center')
plt.bar(r3, bars3, width=bar_width, align='center')
plt.bar(r4, bars4, width=bar_width, align='center')
plt.bar(r5, bars5, width=bar_width, align='center')
plt.legend(
('a', 'b', 'c', 'd', 'e'))
plt.show()
【问题讨论】:
-
切换到水平条,使情节更长。如果某些条不可见,请使用对数刻度,因为它们与较长的条相比较短。我不推荐堆叠条形图:堆叠条形图的一个主要缺陷是,每个条形图的分段越多,就越难阅读。此外,将每个部分相互比较也很困难,因为它们没有在共同的基线上对齐。
标签: python matplotlib bar-chart