平移工具¶
新特性
QwtPlotPicker 是一个完全重构的实时交互式绘图选择器,提供了比原版 QwtPlotPicker 通过缓存实现的平移更直观的用户体验。
Qwt6的QwtPlotPicker是基于缓存的平移机制,主要有下面两个问题:
- 平移过程中显示的是缓存的位图,而不是实时更新的绘图内容
- 用户无法在平移过程中看到数据的实时变化,无法实现流畅的交互式数据探索
虽然在某些层面,Qwt6的QwtPlotPicker能极大的减少了绘图的刷新,但对视觉体验却非常不友好,为此Qwt7对QwtPlotPicker进行了重构,目的是实现流畅的交互式数据探索
重构的QwtPlotPicker改进¶
新的QwtPlotPicker基于QwtPicker状态机机制,实现了实时平移和缩放:
效果如下:

新的QwtPlotPicker提供了完整坐标轴支持
- ✅ 线性坐标轴(Linear Scale)
- ✅ 对数坐标轴(Logarithmic Scale)
- ✅ 日期时间坐标轴(DateTime Scale)
- ✅ 多坐标轴
使用原来的缓存式选择器
如果你想使用原来的缓存式选择器,可以使用QwtPlotCachePicker
| 类变更情况 | 属性 | 基类 |
|---|---|---|
| QwtPanner -> QwtCachePanner | 更名 | QWidget |
| 原QwtPlotPanner -> QwtPlotCachePanner | 更名 | QwtCachePanner |
| 原QwtPolarPanner -> QwtPolarCachePanner | 更名 | QwtCachePanner |
| QwtPlotPanner | 重构 | QwtPicker |
Qwt6的QwtPlotPanner完全进行了重构,但接口保持不变,原来代码基本可以不用进行修改
基本使用方法¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | |
你可以设置平移的方向,这样可以限制只能往一个方向移动:
1 2 3 4 | |
注意
QwtPlotPanner和QwtPlotPicker不同,它不需要绑定坐标轴,因为移动是针对整个画布的,移动画布过程中,所有坐标轴都会被移动