使用tkinter / FigureCanvasTkAgg一次保存多个supblots

时间:2017-01-09 12:16:12

标签: python tkinter-canvas matplotlib-widget

我正在尝试开发一个GUI,它允许我从子文件中绘制数据并直接在GUI中显示它,并将所有绘制的文件保存在一个文件中。显示图表工作正常,但是当我尝试保存整个图形时,只保存最后绘制的子图形。

以下是代码的重要部分:

def callback(self):
    name= fd.askopenfilename()
    (y,z) = np.loadtxt(name, usecols=(0,1), unpack = True)
    global counter
    global f
    f = Figure(figsize=(2,2), dpi=100)
    str1 = "111"
    str1 = str(int(str1))
    print(str(str1))
    a = f.add_subplot(int(str1))
    a.plot(y,z)
    global canvas
    canvas = FigureCanvasTkAgg(f, master=root)
    canvas.show()
    canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand = 1 )
 def savecanvas(self):
    f.savefig("canvas2.png")    

每个功能都作为命令连接到一个按钮。没关系" str1" -construction。它就在那里,以防我想改变以下子图的大小。

0 个答案:

没有答案