pyqtchart實時更新

2021-10-22 17:41:27 字數 2233 閱讀 6414

用pyqt做的小專案,其中有個需求是實時更新曲線圖,在這裡記錄下除錯的**。pyqt和qt基本相同,可以參照c++版本qt的寫法。

pyqtchart的資料可真少呀。搜了好久,最後還是結合c++版的文件和大佬們的部落格做出來這個效果。

直接上**

class

mainwindow

(qmainwindow, ui_mainwindow)

:def

__init__

(self,

*args,

**kwargs)

:super

(mainwindow, self)

.__init__(

*args,

**kwargs)

self.setupui(self)

# 初始化ui

self.graphicsview.setrenderhint(qpainter.antialiasing)

self.limitminute=

240#設定顯示多少分鐘內的活動

self.chart_init(

) self.timer_init(

) self.last =

0def

timer_init

(self)

:# 使用qtimer,2秒觸發一次,更新資料

self.timer = qtimer(self)

self.timer.timeout.connect(self.drawline)

self.timer.start(

2000

)def

chart_init

(self)

: self.chart = qchart(

) self.series = qsplineseries(

) self.series1 = qsplineseries(

)2.5,5

))2.5,5)

) self.chart.addseries(self.series)

self.chart.addseries(self.series1)

self.chart.axisy = qvalueaxis(

) self.chart.axisy.setrange(0,

100)

self.chart.axisy.settickcount(5)

self.chart.axisx = qvalueaxis(

) self.chart.axisx.setrange(0,

100)

self.chart.axisx.settickcount(5)

self.chart.addaxis(self.chart.axisy,qt.alignleft)

self.chart.addaxis(self.chart.axisx, qt.alignbottom)

self.series.attachaxis(self.chart.axisy)

self.series.attachaxis(self.chart.axisx)

self.series1.attachaxis(self.chart.axisy)

self.series1.attachaxis(self.chart.axisx)

self.index =

3 self.graphicsview.setchart(self.chart)

defdrawline

(self)

:print(66

) self.now = random.randint(30,

50)1,self.now))1

, self.last)

) self.index+=

1 self.last = self.now

if self.index>

100:

self.chart.scroll(3,

0)if __name__ ==

'__main__'

:# 程式的入口

win = mainwindow(

) win.show())

)

android 相簿實時更新

於是只有問度娘了。1.重新掃瞄整個儲存空間,將資料庫更新,但是這樣代價太大 2.將新的資料加到資料庫,這樣操作對資料的安全性要求很高,所以還是不推薦 3.直接掃瞄新新增的檔案 當然也可以是該檔案所在的資料夾 最後我使用了第三種方式解決了問題 如下 uri uri uri.parse file env...

近期計畫(實時更新)

發現水平雖然 了很多,但是和大牛比起來還是不夠。可持久化資料結構 樹套樹,lct。複習計畫 較為重要 可持久化資料結構 dp 狀壓插頭dp,斜率優化,四邊形不等式優化dp。sg函式。點分治,sam什麼的也要時常複習。數論 杜教篩,洲閣篩,反演,連分數,還有各種什麼catalan,stirling之類...

ajax實時更新資料

實現功能 顯示試題結果,並實時更新各題各選項選擇人數 示例 控制器 surveycontroller.php public function getresult id oquestions question where sid id select id sid name a a ct b b ct ...