pyqt5在ui中嵌入linux终端,在QT.ui中嵌入pyqtgraph图?

首先,我希望你有一些耐心,因为我是这类项目的新人,我也希望不要问愚蠢的问题。这就是说,我的主要目标是创建一个用户界面为覆盆子pi 3将感测电压,电流等从电池和太阳能电池板。

因为我正在研究一种树莓,并且对Python3有一些了解,所以我决定使用QTCreator,据我所知,QTCreator可以通过pyqt(https://nikolak.com/pyqt-qt-designer-getting-started/)翻译成Python3。我把它安装在我的覆盆子皮上,并制作了以下用户界面:

在有了一个基本的UI之后,我使用pyuic5命令将.UI文件转换为.py,并且我可以使用“python3 main.py”打开UI,一切看起来都正常:

打开main.py文件后UI的外观

HUGdj.png

现在,我想在UI上有几个图(比如电压与时间的关系图等)。我用以下方法进行测试:import sys

import pyqtgraph as pg

from pyqtgraph.Qt import QtCore, QtGui

import numpy as np

pg.setConfigOption('background', 'w')

pg.setConfigOption('foreground', 'k')

win = pg.GraphicsWindow()

win.setWindowTitle('pyqtgraph example: Scrolling Plots')

p1 = win.addPlot(labels = {'left':'Voltage', 'bottom':'Time'})

data1 = np.random.normal(size=10)

data2 = np.random.normal(size=10)

curve1 = p1.plot(data1, pen=(3,3))

curve2 = p1.plot(data2, pen=(2,3))

ptr1 = 0

def update1():

global data1, curve1, data2, ptr1

data1[:-1] = data1[1:] # shift data in the array one sample left

# (see also: np.roll)

data1[-1] = np.random.normal()

ptr1 += 1

curve1.setData(data1)

curve1.setPos(ptr1,0)

data2[:-1] = data2[1:] # shift data in the array one sample left

# (see also: np.roll)

data2[-1] = np.random.normal()

curve2.setData(data2)

curve2.setPos(ptr1,0)

def update():

update1()

timer = pg.QtCore.QTimer()

timer.timeout.connect(update)

timer.start(2000) # number of seconds (every 1000) for next update

if __name__ == '__main__':

QtGui.QApplication.instance().exec_()

有没有可能将该图embbed到我的main.py文件中?如果我理解正确,我应该在QTCreator上使用promoting widget功能。提前谢谢你们!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值