如何固定此直方图,以使条形图等距且标签位于条形图的中心?

时间:2018-11-13 06:35:27

标签: matplotlib plot

enter image description here

标题说明了一切。我不知道我在做什么错。

1 个答案:

答案 0 :(得分:1)

根据您提供的代码段,下面的代码段应该可以实现您想要的。这个想法是手动提供垃圾箱的位置,设置每个条的宽度并对齐剩余的所有内容。更多信息here

import matplotlib.pyplot as plt
import numpy
columnList = []
for i in range(32):
    columnList.append('Asia')
for i in range(58):
    columnList.append('Europe')
for i in range(18):
    columnList.append('North America')
for i in range(12):
    columnList.append('Central or\nSouth America')
for i in range(7):
    columnList.append('Australia or\nOceania')
n, bins, patches = plt.hist(x=columnList, bins=numpy.arange(6), rwidth=0.5,
                            align='left')
plt.grid(axis='y', alpha=0.75)
plt.xlabel('Continents')
plt.ylabel('Frequency')
plt.title('Continental Distribution of respondents')
plt.show()

enter image description here