plot.subplot ---> '图'对象没有属性'情节'

时间:2014-05-18 15:23:57

标签: python matplotlib subplot

我正在尝试使用类似于此处显示的子图:

http://matplotlib.org/examples/pylab_examples/subplots_demo.html

axarr = plt.subplots(len(column_list), sharex=True)
subp_num = 0
for j in column_list:
     axarr[subp_num].plot(df.values[2:,j])
     subp_num = subp_num + 1

然后我收到了这个错误:

axarr[subp_num].plot(df.values[2:,j])
AttributeError: 'Figure' object has no attribute 'plot'

任何暗示我做错了什么? 感谢

1 个答案:

答案 0 :(得分:8)

您有一个明显的问题:您提供的链接中的所有示例都是

f, axarr = plt.subplots(...)

其中fFigure,您随后将其视为具有plot属性。如果您正在使用任意数量的子图,您可以这样做:

axarr = plt.subplots(...)
f, axarr = axarr[0], axarr[1:]

此外,您正在使用带有递增索引的while循环,这是笨拙且容易出错的;只需使用for循环:

for j, ax in zip(column_list, axarr):
    ax.plot(df.values[2:, j])