多个图表不适用于子图功能? Python
Multiple charts not working with subplot function? Python
我创建了 6 个饼图,但是它们都是分开显示的。我想让它们都出现在同一张图上(3 行,2 列)。
因此,我尝试使用 subplot 函数,但我认为我没有正确使用它,也看不出哪里出错了。
下面是我写的代码,使用python 2.7。我是编码新手,只是需要一些指导来解决这个琐碎的问题,谢谢!
此外,如果您有任何使此代码更“精简”的技巧,我洗耳恭听!
我收到错误:
AttributeError: 'numpy.ndarray' object has no attribute 'pie'
使代码达到 运行 的最快方法是在创建二维 axs
数组后立即将其“展平”为一维数组:
fig, axs = plt.subplots(3, 2)
axs = axs.flatten()
# The rest of your existing code
此外,Python 中的索引从 0 开始,因此您需要将索引号更改为从 0 到 5,而不是 1 到 6。
解释: 您得到的错误是因为 fig, axs = plt.subplots(3, 2)
返回的轴数组是二维的,有 3 行和 2 列。所以第一个 AxesSubplot
对象位于 axs[0, 0]
(或 axs[0][0]
),但 axs[0]
returns 是 3×2 数组的第一行,即本身就是一个数组。
(另一方面,您应该升级到 Python 3.x :) https://www.python.org/doc/sunset-python-2/)
我创建了 6 个饼图,但是它们都是分开显示的。我想让它们都出现在同一张图上(3 行,2 列)。
因此,我尝试使用 subplot 函数,但我认为我没有正确使用它,也看不出哪里出错了。
下面是我写的代码,使用python 2.7。我是编码新手,只是需要一些指导来解决这个琐碎的问题,谢谢!
此外,如果您有任何使此代码更“精简”的技巧,我洗耳恭听!
我收到错误:
AttributeError: 'numpy.ndarray' object has no attribute 'pie'
使代码达到 运行 的最快方法是在创建二维 axs
数组后立即将其“展平”为一维数组:
fig, axs = plt.subplots(3, 2)
axs = axs.flatten()
# The rest of your existing code
此外,Python 中的索引从 0 开始,因此您需要将索引号更改为从 0 到 5,而不是 1 到 6。
解释: 您得到的错误是因为 fig, axs = plt.subplots(3, 2)
返回的轴数组是二维的,有 3 行和 2 列。所以第一个 AxesSubplot
对象位于 axs[0, 0]
(或 axs[0][0]
),但 axs[0]
returns 是 3×2 数组的第一行,即本身就是一个数组。
(另一方面,您应该升级到 Python 3.x :) https://www.python.org/doc/sunset-python-2/)