teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2020/08/19 07:34

投稿

8524ba23
8524ba23

スコア38352

answer CHANGED
@@ -10,4 +10,32 @@
10
10
  canvas.get_tk_widget().place(x=0,y=0) # そのままの大きさで配置
11
11
  ```
12
12
  のように書き換えると、とりあえず動作するようになります。
13
- 元のソースでは画像にボタンがかぶってしまうのでご自身で調整ください。
13
+ 元のソースでは画像にボタンがかぶってしまうのでご自身で調整ください。
14
+
15
+ 追記
16
+ -----
17
+ シンプルなサンプルを以下に示します。
18
+ ```Python
19
+ import tkinter
20
+ import matplotlib.pyplot as plt
21
+ from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
22
+ import numpy as np
23
+ import random
24
+
25
+ def draw(e):
26
+ ax.cla()
27
+ xy = np.random.random(size=(10,2))
28
+ ax.scatter(xy[:,0],xy[:,1])
29
+ canvas.draw()
30
+
31
+ root = tkinter.Tk()
32
+ fig, ax = plt.subplots()
33
+ canvas = FigureCanvasTkAgg( fig, master=root)
34
+ canvas.get_tk_widget().pack()
35
+ btn = tkinter.Button(text='draw')
36
+ btn.bind('<Button-1>', draw)
37
+ btn.pack()
38
+
39
+ draw()
40
+ root.mainloop()
41
+ ```