https://www.cnblogs.com/zyg123/p/10385456.html

# 导入tkinter模块
import tkinter # 创建画布需要的库
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg # 创建工具栏需要的库
from matplotlib.backends.backend_tkagg import NavigationToolbar2Tk # 快捷键需要的模块
from matplotlib.backend_bases import key_press_handler # 导入绘图需要的模块
from matplotlib.figure import Figure # 实例化一个根窗口与设置标题
root = tkinter.Tk()
root.wm_title("Embedding in Tk") # 画布的大小和分别率
fig = Figure(figsize=(5, 4), dpi=100) # 利用子图画图
axc = fig.add_subplot(111)
axc.plot([1, 2, 3, 4, 5]) # 创建画布控件
canvas = FigureCanvasTkAgg(fig, master=root) # A tk.DrawingArea.
canvas.draw()
# 显示画布控件
canvas.get_tk_widget().pack() # 创建工具条控件
toolbar = NavigationToolbar2Tk(canvas, root)
toolbar.update()
# 显示工具条控件
canvas.get_tk_widget().pack() # 绑定快捷键函数
def on_key_press(event):
print("you pressed {}".format(event.key))
key_press_handler(event, canvas, toolbar) # 调用快捷键函数
canvas.mpl_connect("key_press_event", on_key_press) # 退出函数
def _quit():
root.quit()
root.destroy() # 退出按钮控件
button = tkinter.Button(master=root, text="Quit", command=_quit)
button.pack(side=tkinter.BOTTOM) # 消息循环
tkinter.mainloop()

  

最新文章

  1. gentoo 安装
  2. S1java基础学习笔记
  3. 一个NULL引发的血案
  4. Unity优化之减少Drawcall
  5. DNS笔记 DNS区域集成到 Active Directory
  6. pfSense软路由防火墙
  7. 基于mAppWidget实现手绘地图--索引&DEMO
  8. poj3080Blue Jeans(在m个串中找到这m个串的 最长连续公共子序列)
  9. junit源码解析--初始化阶段
  10. hdu 2005 java
  11. mui getJSON实现jsonp跨域
  12. 对YUV数据进行裁剪
  13. 进程间的通讯————IPC
  14. ui-router实现返回上一页功能
  15. 03. Pandas 2| 时间序列
  16. Linux只下载不安装软件包
  17. SD从零开始25-28
  18. PyQt5--MessageBox
  19. Python–logging模块知多少
  20. linux常见命令整理

热门文章

  1. 常见数据库mysql、oracle和DB2中is null 和 =null 的区别
  2. VueRouter 报错:inject() can only be used inside setup() or functional components
  3. Canvas:绘制文本
  4. No.1.8
  5. 自己使用Git规范流程-记录
  6. MySQL突然连接失败
  7. iperf3带宽性能检测工具
  8. vue 事件传递原始 DOM 事件
  9. linux系统过滤文件,并且通过时间对过滤的文件排序
  10. 了解ASP(二)