python画十字_如何在pyqtgraph中绘制十字线和绘制鼠标位置?
我是Python和pyqtgraph的新手。我正在研究一种不同类型信号的查看器。当我想要包含一个十字线和一个带有鼠标位置的文本标签时,我被卡住了。我正在使用GridLayout,因为稍后图形将与其他几个元素组合在一起。
我试图调整pyqtgraph示例十字线/鼠标交互,但除了pyqtgraph中的许多其他内容外,我不理解mousemoved()之前的vb=signalgraph.vb的含义,并且脚本会引发一个NameErrorfrom pyqtgraph.Qt import QtGui, QtCore
import numpy as np
import pyqtgraph as pg
#QtGui.QApplication.setGraphicsSystem('raster')
app = QtGui.QApplication([])
mainwindow = QtGui.QMainWindow()
mainwindow.setWindowTitle('pyqtgraph example: PlotWidget')
mainwindow.resize(1000,800)
cw = QtGui.QWidget()
mainwindow.setCentralWidget(cw)
gridlayout = QtGui.QGridLayout()
cw.setLayout(gridlayout)
# define plot windows
signalgraph = pg.PlotWidget(name='Signalgraph')
# set position and size of plot windows
gridlayout.addWidget(signalgraph,0,0)
mainwindow.show()
# sample data
x = [0,1,2,3,4,5,6,7,8,9,10]
y = [0,0,0,8,8,8,9,9,9,0,0]
# plot 1
curve = pg.PlotCurveItem(x,y[:-1],pen='w',stepMode=True)
signalgraph.addItem(curve)
#cross hair in signalgraph
vLine = pg.InfiniteLine(angle=90, movable=False)
hLine = pg.InfiniteLine(angle=0, movable=False)
signalgraph.addItem(vLine, ignoreBounds=True)
signalgraph.addItem(hLine, ignoreBounds=True)
# Here I am not sure what to do ...
vb = signalgraph.vb
##vb = pg.ViewBox()
def mouseMoved(evt):
pos = evt[0]
if signalgraph.sceneBoundingRect().contains(pos):
mousePoint = vb.mapSceneToView(pos)
index = int(mousePoint.x())
if index > 0 and index < len(x):
label.setText("x=%0.1f, y1=%0.1f" % (mousePoint.x(), y[index], data2[index]))
vLine.setPos(mousePoint.x())
hLine.setPos(mousePoint.y())
proxy = pg.SignalProxy(signalgraph.scene().sigMouseMoved, rateLimit=60, slot=mouseMoved)
signalgraph.scene().sigMouseMoved.connect(mouseMoved)
# Start Qt event loop unless running in interactive mode or using pyside.
if __name__ == '__main__':
import sys
if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
QtGui.QApplication.instance().exec_()
非常感谢
当做
迈克尔
python画十字_如何在pyqtgraph中绘制十字线和绘制鼠标位置?相关推荐
- python画十字_如何绘制十字线并在pyqtgraph中绘制鼠标位置?
我是Python和pyqtgraph的新手.我正在为不同类型的信号查看器.当然,当我想用鼠标位置包含十字准线和文本标签时,我陷入了困境.我正在使用GridLayout,因为后来该图与其他几个元素结 ...
- unbantu上python安装步骤_如何在Ubuntu中安装Python 3.6?
Python是增长最快的主要通用编程语言.原因有很多,比如它的可读性和灵活性,易于学习和使用,可靠和高效. 有两个主要的Python版本被使用- 2和3 (Python的现在和未来);前者将看不到新的 ...
- eclipse配置python开发环境_如何在Eclipse中配置python开发环境
展开全部 步骤1: 下载用于在2113Eclipse中开发Python的插件PyDev. 步骤2: 解压5261python.将解压后的features和plugins文件4102夹中的1653内容拷 ...
- php调用python绘图程序_如何在matlab中调用python程序
现在python很火,很多代码都是python写的,如果你和我一样,习惯了使用matlab,还想在matlab中调用Python的代码,应该怎么办呢?其中一条思路:首先在matlab中调用系统脚本命令 ...
- python pulp 整数规划_如何在PuLP中使用整数规划指定多变量约束?
我试图用Python-PuLP中的整数规划公式来解决装箱问题.问题模型如下: 我使用PuLP库编写了以下Python代码from pulp import * #knapsack problem def ...
- win10系统64位安装python什么版本_如何在win10中安装Python
本文主要讲解win10如何安装python,希望对初学的小伙伴有帮助.环境:win 10 64位操作系统1.python下载https://www.python.org/downloads/2.x和3 ...
- python turtle渐变色_如何在matplotlib中绘制渐变色线?
我最近用类似的请求(creating over 20 unique legend colors using matplotlib)回答了一个问题.在这里,我展示了你可以将绘制线条所需的颜色循环映射到颜 ...
- python图片马赛克_如何在Matplotlib中绘制马赛克图
color_label:向y记号标签添加背景色.[对/错]def mosaic_plot(df, dic_color_row, row_labels=None, col_labels=None, al ...
- python画十字_用OpenCV在图像上画十字
我认为最好是全局保存坐标,而不是使用一堆高标度/低标度.它们让我头疼,可能会因为舍入而失去精确性.在 也就是说,每次检测到某个对象时,首先将其转换为全局(原始图像)坐标.我在这里写了一个小的演示,模仿 ...
最新文章
- “编程不规范,同事两行泪!”
- 2-SAT 问题 详解
- 让Hinton后悔投少了的AI公司:吴恩达弟子创办,李飞飞也是投资人
- python画图代码彩虹-Python利用turtle库绘制彩虹代码示例
- 漫画:别人的35岁!
- 基于SVD的降维优化
- “金三银四”跳槽需谨慎!
- 使用 Shell 脚本实现安装进度指示器
- oracle数据库top用法,Oracle TOP SQLHIT
- NYOJ-111分数加减法
- Excel自定义格式千分符
- C语言与三菱plc通讯案例,三菱PLC的通讯与编程案例
- php页面添加背景图片,css怎么增加背景图片
- OpenCV-图像翻转函数cv::filp
- Android UI 显示工具——HierarchyViewer工具
- 空气炸锅炸鸡腿多少度多少分钟最好(空气炸锅炸鸡腿多少度多长时间)
- WIDS(无线入侵检测)
- iptable使用笔记
- 在线阅读Linux内核源代码
- q群机器人php,机器人自动审核入群验证php源码