gpt4 book ai didi

python - 使用 matplotlib plt.barh 时 invert_xaxis 给出错误

转载 作者:太空宇宙 更新时间:2023-11-03 21:07:49 25 4
gpt4 key购买 nike

我正在尝试绘制 2 向条形图。我想反转 x1 的 x 轴,以便 0 位于两者的中间。我不断收到错误:

AttributeError: 'BarContainer' object has no attribute 'invert_xaxis'

这是我的代码:

import matplotlib.pyplot as plt
y = ['F','M','H']
x1 = [8, 4, 3]
x2 = [2, 4, 7]
fig, axes = plt.subplots(ncols=2, sharey=True)
axes[0] = plt.barh(y, x1, align='center', color='b')
axes[1] = plt.barh(y, x2, align='center', color='r')
axes[0].invert_xaxis()
plt.show()

最佳答案

问题是您将绘图分配给两个轴对象,而不是使用它们来绘图。正确的方法是直接使用axis对象来绘制barh。然后事情就会按预期进行。

import matplotlib.pyplot as plt

y = ['F','M','H']
x1 = [8, 4, 3]
x2 = [2, 4, 7]
fig, axes = plt.subplots(ncols=2, sharey=True)
axes[0].barh(y, x1, align='center', color='b') # <---- Changed here
axes[1].barh(y, x2, align='center', color='r') # <---- Changed here
axes[0].invert_xaxis()
plt.show()

enter image description here

关于python - 使用 matplotlib plt.barh 时 invert_xaxis 给出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55283829/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com