pyqtgraph选择图形的2D区域作为阈值来重绘图形

2023-11-29

我希望添加功能,以便用户可以在选择的线条上绘制一个矩形,并且图形将刷新,以便矩形内的线条保持各自的颜色,而外部的任何线条都变成灰色?

我的代码如下,当前在线条上缩放用户定义的矩形的绘图(对于 3 行,我的实际代码将绘制更多):

from pyqtgraph.Qt import QtGui, QtCore
import numpy as np
import pyqtgraph as pg

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

from random import randint

class CustomViewBox(pg.ViewBox):
    def __init__(self, *args, **kwds):
    pg.ViewBox.__init__(self, *args, **kwds)
    self.setMouseMode(self.RectMode)

    ## reimplement right-click to zoom out
    def mouseClickEvent(self, ev):
    if ev.button() == QtCore.Qt.RightButton:
        #self.autoRange()
        self.setXRange(0,5)
        self.setYRange(0,10)

    def mouseDragEvent(self, ev):
    if ev.button() == QtCore.Qt.RightButton:
        ev.ignore()
    else:
        pg.ViewBox.mouseDragEvent(self, ev)


app = pg.mkQApp()

vb = CustomViewBox()

graph = pg.PlotWidget(viewBox=vb, enableMenu=False)

colour = []

for i in range(0,3):
    colourvalue = [randint(0,255), randint(0,255), randint(0,255)]
    tuple(colourvalue)
    colour.append(colourvalue)

y_data = [ 
     [['a',0],['b',1],['c',None],['d',6],['e',7]],
     [['a',5],['b',2],['c',1],['d',None],['e',1]],
     [['a',3],['b',None],['c',4],['d',9],['e',None]],
     ]

x_data = [0, 1, 2, 3, 4]

for i in range(3):
    xv = []
    yv = []
    for j, v in enumerate(row[i][1] for row in y_data):
    if v is not None:
        xv.append(int(j))
        yv.append(float(v))
    graph.plot(xv, yv, pen = colour[i], name=y_data[0][i][0])

graph.show()
graph.setWindowTitle('Hourly Frequency Graph')
graph.setXRange(0,5)
graph.setYRange(0,10)

graph.setLabel('left', "Frequency", units='%')
graph.setLabel('bottom', "Hour")
graph.showGrid(x=True, y=True)

if __name__ == '__main__':
    import sys
    if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
        QtGui.QApplication.instance().exec_()

预先感谢您的任何帮助和建议!

顺便说一句,我还想知道为什么当我关闭窗口时,这段代码总是给出分段错误:11。


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pyqtgraph选择图形的2D区域作为阈值来重绘图形 的相关文章

随机推荐

  • 猫鼬发现返回奇怪的对象

    我当前的问题是 db collection find mongoose 命令 我对 mongoose mongodb 比较陌生 但我已经掌握了它的概念 这是我一直试图运行的测试代码 mongoose connect url function
  • 如何在 Ironpython 中使用 –X:Frames?

    Visual Studio 2010 Ironpython for net4 我想在ironpython中使用numpy 他们说我必须使用框架支持 因此 我应该在命令行上使用 X Frames 或 X FullFrames 运行 ipy 但
  • 在错误消息中显示行号

    在我使用过的大多数 MATLAB 实例中 每当我的代码中出现错误时 命令窗口中的错误消息都会显示行号 但是在我当前使用的计算机上 它仅显示以下内容 Subscripted assignment dimension mismatch 有没有办
  • C 中 bool 数据类型的 scanf 格式说明符

    我在 C std99 中使用 bool 数据类型 其定义在
  • Node.js 异常处理最佳实践

    几天前我刚刚开始尝试 Node js 我意识到每当我的程序中出现未处理的异常时 节点就会终止 这与我接触过的普通服务器容器不同 在普通服务器容器中 当发生未处理的异常时 只有工作线程会终止 并且容器仍然能够接收请求 这提出了几个问题 Is
  • Swift 块值错误

    我不断收到快速完成块错误 错误是 无法调用非函数类型的值 Array Array gt 下面还有一个错误的图像 这是代码 var blockFinih selectedTags Array
  • 用于二进制输出的 ostream_iterator

    我希望能够使用ostream iterator流式传输到二进制文件 但是ostream iterator uses a 格式化输出功能所以它会写 ASCII 而不是二进制 std ostream iterator是一个单遍 OutputIt
  • Kubernetes 和 AAD 身份验证

    在配置的 AKS 上 有一个 docker 容器 其中包含使用 AAD 身份验证的应用程序 基于本文还有配置的入口 API 运行良好 当我添加带有 https 前缀的 Azure Active Directory 应用程序注册回复 URL
  • 如何从外部服务异步调用 google 上的操作?

    我正在尝试使用 actionssdk 将 Google Home 连接到外部聊天机器人 我有一个 API 它接受用户输入并使用 Webhook 将其发送到我的聊天机器人 但我的聊天机器人以异步方式调用 API 的另一个端点做出响应 并且我无
  • Python mysql 使用变量来选择某个字段

    python 和 mysql 有一个棘手的问题 为了简单起见 以下代码返回变量 field 中的所有内容 它是一个字符串 例如 用户名 或 密码 options field userID entries cursor execute sel
  • 实现 GCM 时如何从 Android 应用程序调用服务器应用程序 servlet 来注册设备

    我正在尝试从 Android 开发者网站了解 GCM 我已经按照以下说明实现了客户端 Android 应用程序http developer android com google gcm client html和 http 服务器应用程序 不
  • 如何使用QWebChannel从python接收数据到js?

    我试图让我的 PyQt 应用程序与 JS 进行通信 但无法从 python 获取值 我在 python 端有两个插槽来获取和打印数据 在示例中 一个 int 从 JS 传递给 python python 加 5 并将其传回 然后 JS 调用
  • iPhone - 将视频显示为启动画面

    我需要在我的 iPhone 应用程序中将视频显示为闪屏 我正在使用以下代码 void setupMovie NSString moviePath NSBundle mainBundle pathForResource iphone ofTy
  • 如何使 PhpStorm 显示用 @method 声明的方法抛出的异常(或从魔术方法 docblock 继承它们)?

    假设以下示例代码 method bool someMethod class MyClass throws MyClassException public function call method args if this gt someCh
  • 是否有用于共享列表或地图的一部分的 YAML 语法?

    所以 我知道我可以做这样的事情 sitelist sites www foo com www bar com anotherlist sites 并且有sitelist and anotherlist两者都包含www foo com and
  • 通过Web服务正确捕获特定异常

    我目前在我们的客户端程序中使用 C NET 服务 作为服务器设计的一部分 会抛出几个定制的异常来指示特定错误 就像在任何正常的桌面程序中一样 问题在于 Web 服务捕获这些错误并将它们序列化为FaultException 并将实际异常 如N
  • javafx简单的PathTransition动画

    我正在使用 JavaFX 构建纸牌游戏 但我很难添加简单的动画 我有一个 HBox 其中有多个 ImageView 每个图像的右边距为 80 以使图像彼此重叠 现在我想在添加卡片时为其添加动画 我想将其放置在屏幕上的某个位置 对手玩家的手
  • 如何获取与用于在 Windows 中启动关联应用程序的文件相关的完整资源管理器列表?

    为了解释 让我直接跳到一个例子 如果双击 jpeg 它应该会在 Windows 上打开照片查看器应用程序 到目前为止 这似乎是一个简单的文件关联 但是 使用箭头键您可以浏览同一文件夹中的其他图片 但这并不是基于从文件名中提取简单的路径 例如
  • 如何使用 CodeIgniter Active Record 方法添加 ORDER BY 子句?

    我有一个非常小的脚本来从数据库表中获取所有记录 代码如下 query this gt db gt get this gt table name return query gt result 使用这种语法 我将如何添加ORDER BY nam
  • pyqtgraph选择图形的2D区域作为阈值来重绘图形

    我希望添加功能 以便用户可以在选择的线条上绘制一个矩形 并且图形将刷新 以便矩形内的线条保持各自的颜色 而外部的任何线条都变成灰色 我的代码如下 当前在线条上缩放用户定义的矩形的绘图 对于 3 行 我的实际代码将绘制更多 from pyqt