2014-05-18 15 views
5

Tôi cố gắng để sử dụng ô phụ tương tự như những gì đang được hiển thị ở đây:plot.subplot ---> 'Hình' đối tượng không có thuộc tính 'âm mưu'

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 

sau đó tôi có được điều này lỗi:

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

Bất kỳ gợi ý nào về những gì tôi đang làm sai? Cảm ơn

Trả lời

8

Bạn có một vấn đề rõ ràng: tất cả các ví dụ trong các liên kết mà bạn cung cấp trông giống như

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

nơi fFigure bạn đang sau đó xử như thể nó đã có một thuộc tính plot. Nếu bạn đang làm việc với một số tùy ý các ô phụ, bạn có thể làm:

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

Ngoài ra, bạn đang sử dụng một vòng lặp while với một chỉ số incrementing, đó là vụng về và dễ bị lỗi; chỉ cần sử dụng vòng lặp for:

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

Rất cám ơn jonrsharp, nó chỉ làm việc thêm "f". – user2564259

Các vấn đề liên quan