如何在 Matplotlib 柱状图中消除条形之间的间隙?


要消除条形之间的间隙,我们可以将 bar() 方法的参数中 align 的值更改为 center。

步骤

  • 创建一个名为 data 的字典,其中包含两个键:milk 和water。

  • 获取字典中键和值列表。

  • 使用 subplots() 方法创建一个图形并添加一组两个子图。

  • 在轴 2 上,使用 bar 方法绘制没有间隙的条形。将 width 属性设置为 1.0。使用 set_title() 方法设置标题。

  • 使用 tight_layout() 来调整子图之间和周围的填充。

  • 要显示图形,使用show() 方法。

示例

import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
data = {'milk': 12, 'water': 10}
names = list(data.keys())
values = list(data.values())
fif, (ax1, ax2) = plt.subplots(2)
ax1.bar(range(len(data)), values, align='center', width=.05, color='yellow')
ax1.set_title("with gap")
ax2.bar(range(len(data)), values, align='edge', width=1.0, color='yellow')
ax2.set_title("without gap")
plt.tight_layout()
plt.show()

输出

更新于: 2021 年 5 月 8 日

9K+ 次浏览

开启你的 职业生涯

完成课程获取认证

入门
广告