サブファイルからデータをプロットして GUI に直接表示し、プロットされたすべてのファイルを 1 つのファイルに保存できる GUI を開発しようとしています。プロットの表示は正常に機能しますが、Figure 全体を保存しようとすると、最後にプロットされたサブフィギュアのみが保存されます。
コードの重要な部分は次のとおりです。
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」構造を気にしないでください。次のサブプロットのサイズを変更したい場合に備えてあります。