为了账号安全,请及时绑定邮箱和手机立即绑定

在不改变宽度的情况下减少条形之间的空间

在不改变宽度的情况下减少条形之间的空间

万千封印 2023-04-18 16:38:04
我正在创建这样的条形图:gender = ['M', 'F']numbers = [males,females]bars = plt.bar(gender, numbers, width=0.1, bottom=None, align='center', data=None)plt.show()我图表中的两个条彼此相距很远。有什么办法可以在不改变宽度的情况下使它们靠得更近吗?如果我增加宽度,条形之间的空间会减少,但我不想增加宽度。也许改变情节大小的东西可以奏效?
查看完整描述

1 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

您可以更改xlims。对于分类索引,x 位置在内部编号为0, 1, .... Matplotlib 在每边添加了一个默认的 5% 的填充,当只有两个条时,这太短了。或者,您也可以更改 以便ylim为栏顶部的文本腾出更多空间:


from matplotlib import pyplot as plt


gender = ['M', 'F']

numbers = [1644, 1771]

bars = plt.bar(gender, numbers, width=0.1, bottom=None, align='center', data=None)

for x, y in zip(gender, numbers):

    plt.text(x, y, f'{y}\n', ha='center', va='center')

plt.xlim(-0.9, len(gender) - 1 + 0.9)

plt.ylim(0, max(numbers) * 1.1)

plt.show()

//img1.sycdn.imooc.com//643e57150001ddc404860174.jpg

查看完整回答
反对 回复 2023-04-18
  • 1 回答
  • 0 关注
  • 79 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信