Guest User

Untitled

a guest
Dec 14th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. import matplotlib
  2.  
  3. from numpy import arange, sin, pi
  4. from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
  5. from matplotlib.figure import Figure
  6. from matplotlib.backend_bases import key_press_handler
  7. # import matplotlib.animation as animation
  8.  
  9.  
  10. import sys
  11. import tkinter as Tk
  12.  
  13. matplotlib.use('TkAgg')
  14.  
  15.  
  16. def destroy(e):
  17. sys.exit()
  18.  
  19.  
  20. root = Tk.Tk()
  21. root.wm_title("Embedding in TK")
  22.  
  23.  
  24. f = Figure(figsize=(5, 4), dpi=100)
  25. a = f.add_subplot(111)
  26. # t = arange(0.0, 3.0, 0.01)
  27. t = arange(0.0, 7.0, 0.01)
  28. # print(t)
  29. s = sin(2*pi*t)
  30.  
  31. a.plot(t, s)
  32. a.set_title('Tk embedding')
  33. a.set_xlabel('X axis label')
  34. a.set_ylabel('Y label')
  35. # anim = animation.FuncAnimation(f, 5, interval=1000)
  36.  
  37. # a tk.DrawingArea
  38. canvas = FigureCanvasTkAgg(f, master=root)
  39. # ## canvas.show()
  40. canvas.get_tk_widget().pack(side=Tk.TOP, fill=Tk.BOTH, expand=1)
  41.  
  42. canvas._tkcanvas.pack(side=Tk.TOP, fill=Tk.BOTH, expand=1)
  43.  
  44. # button = Tk.Button(master=root, text='Quit', command=sys.exit)
  45. # button.pack(side=Tk.BOTTOM)
  46.  
  47.  
  48. def on_key_event(event):
  49. print('you pressed %s' % event.key)
  50. # key_press_handler(event, canvas, toolbar)
  51. key_press_handler(event, canvas)
  52.  
  53.  
  54. def _quit():
  55. root.quit() # stops mainloop
  56. root.destroy() # this is necessary on Windows to prevent
  57. # Fatal Python Error: PyEval_RestoreThread: NULL tstate
  58.  
  59.  
  60. buttona = Tk.Button(master=root, text='Quit', command=_quit)
  61. buttonb = Tk.Button(master=root, text='Quit b', command=_quit)
  62. buttona.pack(side=Tk.BOTTOM)
  63. buttonb.pack(side=Tk.BOTTOM)
  64.  
  65. canvas.mpl_connect('key_press_event', on_key_event)
  66.  
  67.  
  68. Tk.mainloop()
Add Comment
Please, Sign In to add comment