python matplotlib barh减少了条之间的差距

时间:2017-06-21 21:08:11

标签: python matplotlib

我有一个barh条形图,图中只有两个条形图,但是在绘制它们时,它们距离非常远:

import numpy as np
import matplotlib.pyplot as plt

labels = ('Out', 'In')
bar_values = [5, 10]
num_items = len(labels)
width = 0.25
ind = np.arange(num_items)
bar_width = 0.1

fig = plt.figure()

ax = fig.add_subplot(111)

barlist = ax.barh(ind,
                bar_values,
                bar_width,
                align='edge',
                color='green')

barlist[0].set_color('mediumseagreen')
barlist[1].set_color('orangered')

ax.set_yticks(ind)
ax.set_yticklabels(labels)
ax.invert_yaxis()  # labels read top-to-bottom
ax.set_xlabel('Total')

plt.show()

有没有办法让酒吧更靠近?我已经尝试指定图的大小,但这只会减小整体尺寸,对间隙尺寸没有影响......

1 个答案:

答案 0 :(得分:3)

您可以通过设置bar_width = 0.6或类似值来增加条形的宽度,也可以缩小图形的y范围,例如:

barlist = ax.barh([0.1, 0.3],
                bar_values,
                bar_width,
                align='edge',
                color='green')
ax.set_yticks([0.1, 0.3])
ax.set_yticklabels(labels)

两者都应该增加杆的宽度与杆之间的距离。 Reduced y range