gpt4 book ai didi

python - 使用鼠标仅在 pyqtgraph 中的 x 或 y 方向上缩放

转载 作者:行者123 更新时间:2023-11-28 16:58:20 25 4
gpt4 key购买 nike

我正在使用 pyqtgraph ,它具有使用鼠标滚轮开箱即用的缩放行为。但是对于我的应用程序,我只需要在 x 或 y 方向上放大。

我想做以下事情:

  • 检测鼠标点击起始位置:x1,y1
  • 在 x 或 y 方向拖动鼠标然后释放鼠标。
  • 检测鼠标点击释放位置:x2,y2
  • 计算 dx = x2-x1 和 dy = y2-y1
  • 如果 dx > dy,只更新 plot 的 x 限制为 [x1, x2]。
  • 如果 dy > dx,只将绘图的 y 范围更新为 [y1, y2]。

在 pyqtgraph 中处理此问题的最佳方法是什么?

最佳答案

您可以使用 setMouseEnabled() .来自文档:

setMouseEnabled(x=None, y=None)

Set whether each axis is enabled for mouse interaction. x, y arguments must be True or False. This allows the user to pan/scale one axis of the view while leaving the other axis unchanged.

例如

import pyqtgraph as pg

plot_widget = pg.PlotWidget()
plot_widget.plotItem.setMouseEnabled(y=False) # Only allow zoom in X-axis
plot_widget.plotItem.setMouseEnabled(x=False) # Only allow zoom in Y-axis

只有 X 轴(左),只有 Y 轴(右)

关于python - 使用鼠标仅在 pyqtgraph 中的 x 或 y 方向上缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56143505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com