pyqtgraph绘图库官方文档学习-鼠标互动(mouse interaction)

鼠标互动

大多数使用pyqtgraph数据可视化的应用程序都会生成可以使用鼠标进行交互式缩放,平移和配置的小部件。本节介绍鼠标与这些小部件的交互。

2D图形

在pyqtgraph中,大多数2D可视化遵循以下鼠标交互:

  • 左键:与场景中的项目交互(选择/移动对象等)。如果鼠标光标下没有可移动对象,则使用左键拖动将平移场景。
  • 右键拖动:缩放场景。左/右拖动水平缩放; 垂直向上/向下拖动比例(尽管某些场景的x / y比例会锁定在一起)。如果场景中有x / y轴不可见,则在轴上向右拖动将_only_影响该轴。
  • 右键单击:在大多数情况下单击右键将显示一个上下文菜单,其中包含各种选项,具体取决于鼠标光标下的对象。
  • 中间按钮(或滚轮)拖动:在按下滚轮的情况下拖动鼠标将始终平移场景(这在场景中其他对象阻止使用左按钮进行平移的情况下非常有用)。
  • 中轮滚动:放大和缩小场景。

对于使用右侧或中间按钮拖动很困难的机器(通常是Mac),存在另一种鼠标交互模式。在此模式下,使用鼠标左键拖动会在场景的某个区域上绘制一个框。释放按钮后,场景将缩放并平移以适合该框。可以在上下文菜单中或通过调用以下方式访问此模式:

pyqtgraph.setConfigOption('leftButtonPan' , False)

上下文菜单

右键单击大多数场景将显示上下文菜单,其中包含用于更改场景行为的各种选项。此菜单中提供的一些选项包括:

  • 在数据范围更改时启用/禁用自动缩放
  • 将多个视图的轴链接在一起
  • 启用和禁用鼠标与每个轴的交互
  • 明确设置可见范围值

菜单中可用的确切项目集取决于场景的内容和单击的对象。

3D图形

3D可视化使用以下鼠标交互:

  • 左键拖动:围绕中心点旋转场景
  • 中间滚轮拖动:通过移动 x-y平面内的中央“观察”点来平移场景
  • 中间滚轮拖动+ CTRL:通过沿z轴移动中央“look-at”点来平移场景
  • 滚轮滚动:放大/缩小
  • 滚轮 + CTRL:改变视野角度

和键盘控制:

  • 箭头键围绕中心点旋转,就像拖动鼠标左键一样

【pyqtgraph】pyqtgraph-鼠标互动的更多相关文章

  1. Python 图形 GUI 库 pyqtgraph

    原文  Python 图形 GUI 库 pyqtgraph pyqtgraph 是纯 Python 图形 GUI 库,基于PyQT4 /pyside和NumPy.它主要目的用于在数学/科学/工程中.M ...

  2. 【pyqtgraph绘图】安装pyqtgraph

    解读官方API-安装 安装 参考:http://www.pyqtgraph.org/documentation/installation.html 根据您的需要,有许多不同的方式来安装pyqtgrap ...

  3. Particles.js基于Canvas画布创建粒子原子颗粒效果

    文章目录 使用方法 自定义参数 相关链接 Particles.js是一款基于HTML5 Canvas画布的轻量级粒子动画插件,可以设置粒子的形状.旋转.分布.颜色等属性,还可以动态添加粒子,效果非常炫 ...

  4. 用ECMAScript4 ( ActionScript3) 实现Unity的热更新 -- 热更新Live2D

    live2D是一个很强大的2D动画组件.我们可以使用AS3脚本对它进行热更新. live2D在Unity中的使用请看这里: 如何获取Live2D 总得来说,我们可以先去live2D官网下载它的Unit ...

  5. Python可视化库

    转自小小蒲公英原文用Python可视化库 现如今大数据已人尽皆知,但在这个信息大爆炸的时代里,空有海量数据是无实际使用价值,更不要说帮助管理者进行业务决策.那么数据有什么价值呢?用什么样的手段才能把数 ...

  6. u3d中的INput

    属性 属性: 功能: 轴 (Axes) 包含当前工程的所有定义的输入轴:数目 (Size) 该工程中不同输入轴的数量,元素 0.1.... 是要修改的特定的轴. 名称 (Name) 在游戏启动器中以及 ...

  7. 使用Python语言通过PyQt5和socket实现UDP服务器

    前言 最近做了一个小软件,记录一下相关内容. 已有条件 现在已有一个硬件设备作为客户端(暂称其为"电路"). 基于SIM卡,电路可以通过UDP协议传输数据(程序已经内置在电路中), ...

  8. 【PyQt5-Qt Designer】在GUI中使用pyqtgraph绘图库

    pyqtgraph绘图库 1.1 简介: pyqtgraph是Python平台上一种功能强大的2D/3D绘图库,相对于matplotlib库,由于内部实现方式上,使用了高速计算的numpy信号处理库以 ...

  9. 【pyqtgraph绘图】在pyqtgraph中绘图

    解读pyqtgraph官方API-在pyqtgraph中绘图 参考: http://www.pyqtgraph.org/documentation/plotting.html 在pyqtgraph中绘 ...

随机推荐

  1. Spring Security 之Http Basic认证

    使用Spring Security进行http Basic认证非常简单,直接配置即可使用,如下: <security:http> <security:http-basic>&l ...

  2. Brainfuck反汇编-高级版(Python)

    import re def sym2cal(s): if '>' in s: return len(s) else: return -len(s) def cal(s): if '+' in s ...

  3. c# 使用GDAL处理大图

    注意问题: 1.GDAL 使用官网生成好的dll,必须把Bin目录下的dll一并加到执行目录下去,否则会出错.  2. 用环境变量设置引用路径可以避免一大堆dll放一起.代码如下: /// <s ...

  4. Best Practices in Asynchronous Programming

    http://blog.stephencleary.com/ http://blogs.msdn.com/b/pfxteam/

  5. python初级 2 字符串格式化

    一.回顾 上次我们讲解的数据类型,有int,float,str,bool,NoneType五种 前两种和后两种都比较简单,str较为复杂 二.字符串格式化的使用场景: 有一种字符串, xxx 的内容都 ...

  6. linux 修改文件类型

    :Unix及类Unix系统里,每行结尾只有换行“\n”,Windows系统里面,每行结尾是换行+回车“\n\r”. 利用Linux下的vim编辑器,可以方便的在dos文件.unix文件之间进行切换,且 ...

  7. [React] 05 - Route: connect with ExpressJS

    基础: 初步理解:Node.js Express 框架 参见:[Node.js] 08 - Web Server and REST API 进阶: Ref: 如何系统地学习 Express?[该网页有 ...

  8. ios 消除 字符串 首尾空格

    本文转载至 http://blog.csdn.net/reylen/article/details/8233353 (1)系统去首尾空格方法,使用NSString中的str = [str string ...

  9. invalid bound statement (not found)解决办法

    最近搭建一个web项目后端SSM框架练手,使用Maven管理,遇到一个深坑invalid bound statement (not found),就是mapper文件扫描不到!!! 先上整合过程,解决 ...

  10. 腾讯云Badjs镜像使用入门

    版权声明:本文由王少飞 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/498929001487125840 来源:腾云阁  ...