pyqt5与matplotlib的完美结合实例
作者:coding上下求索 发布时间:2022-01-09 12:23:59
标签:pyqt5,matplotlib
具体用到了matplotlib.backends.backend_qt5agg.FigureCanvasQTAgg
直接上代码(这里给出的只是一个简单的框架,告诉你怎么去写):
# -*- coding: utf-8 -*-
'''
TODO:LQD
'''
import sys
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FC
from PyQt5.QtWidgets import QApplication, QPushButton, QMainWindow, QVBoxLayout, QWidget
class QtDraw(QMainWindow):
flag_btn_start = True
def __init__(self):
super(QtDraw, self).__init__()
self.init_ui()
def init_ui(self):
self.resize(800, 600)
self.setWindowTitle('PyQt5 Draw')
# TODO:这里是结合的关键
self.fig = plt.Figure()
self.canvas = FC(self.fig)
self.btn_start = QPushButton(self)
self.btn_start.setText('draw')
self.btn_start.clicked.connect(self.slot_btn_start)
widget = QWidget()
layout = QVBoxLayout()
layout.addWidget(self.canvas)
layout.addWidget(self.btn_start)
widget.setLayout(layout)
self.setCentralWidget(widget)
def slot_btn_start(self):
try:
ax = self.fig.add_subplot(111)
x = np.linspace(0, 100, 100)
y = np.random.random(100)
ax.cla() # TODO:删除原图,让画布上只有新的一次的图
ax.plot(x, y)
self.canvas.draw() # TODO:这里开始绘制
except Exception as e:
print(e)
def ui_main():
app = QApplication(sys.argv)
w = QtDraw()
w.show()
sys.exit(app.exec_())
if __name__ == '__main__':
ui_main()
来源:https://blog.csdn.net/shangxiaqiusuo1/article/details/90044849


猜你喜欢
- 1 递归函数的特点特点一个函数 内部 调用自己函数内部可以调用其他函数,当然在函数内部也可以调用自己代码特点函数内部的 代码 是相同的,只是
- 前言删除列表中的元素十分简单,有很多方法。使用最多的是remove方法,remove() 方法从集合中删除指定的元素。此方法与discard
- <%on error resume nextdim conn,sql,rsset conn=Server.CreateObject(&
- 优雅的设计经常包含一些特殊的字体,而这些字体并不存在于用户的字体库中,我们并不能奢求每一个访客都是设计师。 :-)虽然CSS3标
- 本文为大家分享了python查看微信消息撤回的具体代码,供大家参考,具体内容如下1.安装itchatitchat是一个开源的python微信
- composer是PHP中非常优秀的一个包管理工具,可以帮助我们来管理项目所需要依赖的所有包以及插件,也可以用来从packagist中创建一
- 1、XML 是什么?XML仅仅是一种数据存放格式,这种格式是一种文本(虽然XML规范中也提供了存放二进制数据的解决方案)。事实上有很多文本格
- 请问,如何在ACCESS数据库和SQL SERVER数据库中查询?
- 防止一般的采集以及小偷读取,加在顶部。同理,可以改造成JS脚本。下面的方法是通过选择同一IP的访问频率来达到防止采集的目的,就是可能也把搜索
- 多个if语句是每次单独判断比如:例子一a = 5if a < 6: #条件1 &
- 实际参数在函数中我们可以使用 arguments 对象获得 (注:形参可通过 arguments.callee 获得),虽然 argumen
- 1、前言前面讲到unittest里面setUp可以在每次执行用例前执行,这样有效的减少了代码量,但是有个弊端,比如打开浏览器操作,每次执行用
- JavaScript正变得越来越流行,它已经成为前端开发的第一选择,并且利用基于JavaScript语言的NodeJS,我们也可以开发出高性
- 1、PHP 中如何正确统计中文字数?这个是困扰我很久的问题,PHP 中有很多函数可以计算字符串的长度,比如下面的例子,分别使用了
- 本文实例分析了Python中的异常处理try/except/finally/raise用法。分享给大家供大家参考,具体如下:异常发生在程序执
- 当数组/矩阵过大则只会显示其中一部分,中间则会自动用省略号代替:直接在import numpy 加上下面一句代码即可解决:import nu
- 空mysqll表内容常见的有两种方法:一种delete,一种是truncate 。 不带where参数的delete语句可以删除mysql表
- 网上有不少生成缩略图的ASP组件。若你的虚拟空间不支持注册新组件,可能会感觉自己的网站失色不少。心晴不才,结合网上资源写了个无组件生成缩略图
- 前言今天我看了一下自己的文件夹,发现了自己写了许多似乎很无聊的代码。于是乎,一个想法油然而生:“生活已经很无聊了,不如再无聊一点叭”。说干就
- 概述很多人接触Python,都是从爬虫开始,其实很多语言都可以做爬虫,只是Python相对其他语言来说,更加简单而已。但是Python并不止