実現したいこと
pythonを使ってアニメーションで動くグラフをGUIに埋め込みたいです
前提
pythonでRUNボタンを押すとアニメーションで動くグラフが出力されるアプリケーションのようなものを作成しています。
発生している問題・エラーメッセージ
最終的にな結果(アニメーションが終了したときのグラフ)が静止画で出力されるのですが、肝心のアニメーションが全く出力されません。
### 該当のソースコード ```python import tkinter as tk import matplotlib.pyplot as plt from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg def graph(): x = [1,2,3,4,5,6,7,8,9,10] y = [1,8,3,6,5,4,7,3,2,10] fig = plt.Figure(figsize=(5,4)) instance=fig.subplots() instance.set_title("グラフ", fontname="MS Gothic") instance.set_xlabel("x軸", fontname="MS Gothic") instance.set_ylabel("y軸", fontname="MS Gothic") for i in range(1,10,1): instance.plot(x[:i],y[:i]) plt.pause(1) return fig def btn_click(): canvas = FigureCanvasTkAgg(graph(), master=root) canvas.get_tk_widget().pack() root=tk.Tk() root.geometry("700x400") #ボタンウィジェットの配置 btn1=tk.Button(root,text="RUN",command=btn_click) btn1.pack() root.mainloop()
試したこと
GUIに埋め込みをせず、アニメーションの部分だけでプログラムを実行すると動作が確認できました。
最終的には機械学習など様々なプログラムを組み合わせたいと思っており、私なりに簡素化したのでどなたかご教授いただければ幸いです。
また、色々と調べましたがplt.pause()を使ったアニメーションとtkinterは相性が悪いのでしょうか?その点もご教授いただければ幸いです。
補足情報(FW/ツールのバージョンなど)
python 3.8
spyder

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/11/11 01:07