pyqt5——實時曲線
摘自大佬:
稍微修改了一下,僅做筆記,還會新增功能
import sys
import random
from pyqt5.qtchart import qdatetimeaxis, qvalueaxis, qsplineseries, qchart, qchartview
from pyqt5.qtgui import qpainter
from pyqt5.qtcore import qdatetime, qt, qtimer
class
demo
(qchartview, qchart)
:def
__init__
(self)
:super
(demo, self)
.__init__(
) self.setwindowtitle(
'肺功能實時資料顯示'
) self.resize(
800,
600)
self.setrenderhint(qpainter.antialiasing)
# 抗鋸齒
self.chart1(
) self.timer1(
)def
chart1
(self)
: self.chart = qchart(
) self.series = qsplineseries(
)# 設定曲線名稱
self.series.setname(
"資料"
)# 把曲線新增到qchart的例項中
self.chart.addseries(self.series)
#宣告並初始化x軸,y軸
self.dtaxisx = qdatetimeaxis(
) self.vlaxisy = qvalueaxis(
)# 設定座標軸顯示範圍
self.vlaxisy.setmin(
-150
) self.vlaxisy.setmax(
150)
# 設定x軸時間樣式
self.dtaxisx.setformat(
"hh:mm:ss"
)# 設定座標軸上的格點
self.dtaxisx.settickcount(10)
self.vlaxisy.settickcount(11)
# 設定座標軸名稱
self.dtaxisx.settitletext(
"time"
) self.vlaxisy.settitletext(
"volume"
)# 設定網格不顯示
self.vlaxisy.setgridlinevisible(
true
)# 把座標軸新增到chart中
self.chart.addaxis(self.dtaxisx, qt.alignbottom)
self.chart.addaxis(self.vlaxisy, qt.alignleft)
# 把曲線關聯到座標軸
self.series.attachaxis(self.dtaxisx)
self.series.attachaxis(self.vlaxisy)
self.setchart(self.chart)
deftimer1
(self)
:# qtimer更新資料
self.timer = qtimer(self)
self.timer.timeout.connect(self.line)
self.timer.start(
500)
# 0.5s更新資料
defline
(self)
:# 獲取當前時間
bjtime = qdatetime.currentdatetime(
)# 更新x軸座標
self.dtaxisx.setmin(qdatetime.currentdatetime(
).addsecs(-20
))self.dtaxisx.setmax(qdatetime.currentdatetime(
).addsecs(0)
)# 產生隨即數
yint = random.randint(
-100
,100
)# 新增資料到曲線末端
), yint)
if __name__ ==
"__main__"
: d = demo(
) d.show())
)
最終結果:
pyqt5切換python版本 pyqt5介面切換
主要的思路就是建立兩個frame 如果有兩個以上同理 使用setvisible 函式顯示或者隱藏frame 引數是bool值 import sys from pyqt5.qtwidgets import from pyqt5.qtcore import from pyqt5.qtgui import...
pyqt5多執行緒優化 PyQt5多執行緒
您不應該向主檢視傳送乙個新的小部件 qlabel 因為它將是乙個新標籤,而不是原始標籤,您應該傳送str型別的文字class thread qthread changepixmap pyqtsignal qpixmap changelabel pyqtsignal str def run self ...
PyQT5 學習使用 筆記 一 安裝pyQT5
之前已經學習過了qt 的 基本使用了解了 訊號和槽 的機制。由於新專案需要跨平台,所以 在視覺開發包的選擇上 選擇了opencv python,所幸 qt也有pyqt5 的包可以和 opencv python 聯合使用開發。廢話不說了 開始安裝吧。開啟cmd命令列介面輸入 pip install p...