|
1 | 1 | #!/usr/bin/env python
|
2 |
| -import matplotlib |
3 |
| -matplotlib.use('TkAgg') |
4 |
| - |
5 |
| -from numpy import arange, sin, pi |
6 |
| -from matplotlib.axes import Subplot |
7 |
| -from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg |
8 |
| -from matplotlib.figure import Figure |
9 |
| - |
10 | 2 | import Tkinter as Tk
|
11 |
| -import sys |
| 3 | +import numpy as np |
| 4 | +import matplotlib.backends.backend_tkagg as backend |
| 5 | +import matplotlib.figure as mfigure |
12 | 6 |
|
13 |
| -def destroy(e): sys.exit() |
14 | 7 |
|
15 | 8 | root = Tk.Tk()
|
16 | 9 | root.wm_title("Embedding in TK")
|
17 |
| -#root.bind("<Destroy>", destroy) |
18 | 10 |
|
| 11 | +fig = mfigure.Figure(figsize=(5,4), dpi=100) |
| 12 | +ax = fig.add_subplot(111) |
| 13 | +t = np.arange(0.0,3.0,0.01) |
| 14 | +s = np.sin(2*np.pi*t) |
19 | 15 |
|
20 |
| -f = Figure(figsize=(5,4), dpi=100) |
21 |
| -a = f.add_subplot(111) |
22 |
| -t = arange(0.0,3.0,0.01) |
23 |
| -s = sin(2*pi*t) |
24 |
| - |
25 |
| -a.plot(t,s) |
26 |
| -a.set_title('Tk embedding') |
27 |
| -a.set_xlabel('X axis label') |
28 |
| -a.set_ylabel('Y label') |
| 16 | +ax.plot(t,s) |
| 17 | +ax.grid(True) |
| 18 | +ax.set_title('Tk embedding') |
| 19 | +ax.set_xlabel('time (s)') |
| 20 | +ax.set_ylabel('volts (V)') |
29 | 21 |
|
30 | 22 |
|
31 | 23 | # a tk.DrawingArea
|
32 |
| -canvas = FigureCanvasTkAgg(f, master=root) |
| 24 | +canvas = backend.FigureCanvasTkAgg(fig, master=root) |
33 | 25 | canvas.show()
|
34 | 26 | canvas.get_tk_widget().pack(side=Tk.TOP, fill=Tk.BOTH, expand=1)
|
35 | 27 |
|
36 |
| -#toolbar = NavigationToolbar2TkAgg( canvas, root ) |
| 28 | +#toolbar = backend.NavigationToolbar2TkAgg( canvas, root ) |
37 | 29 | #toolbar.update()
|
38 |
| -canvas._tkcanvas.pack(side=Tk.TOP, fill=Tk.BOTH, expand=1) |
| 30 | +#toolbar.pack(side=Tk.LEFT) |
| 31 | + |
| 32 | +def destroy(): |
| 33 | + raise SystemExit |
39 | 34 |
|
40 |
| -button = Tk.Button(master=root, text='Quit', command=sys.exit) |
| 35 | +button = Tk.Button(master=root, text='Quit', command=destroy) |
41 | 36 | button.pack(side=Tk.BOTTOM)
|
42 | 37 |
|
43 | 38 | Tk.mainloop()
|
0 commit comments