PyQt5 QtChart忽略cu上的橡皮筋

2024-09-24 22:28:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图放大一张由许多彼此靠近的正弦波组成的图表,但当我无意中点击其中一条曲线(它们在图片中紧密相连)时,橡胶带并没有被创建,因此缩放被忽略,它只允许我放大图表的白边。在

有什么办法解决它,所以如果我点击曲线,它也会放大吗?在

重写的函数:

class aview(QChartView):
    def __init__(self, chart, parent):
        super(aview, self).__init__(chart, parent)
        self.setMouseTracking(True)
        self.setInteractive(True)
        self.setRubberBand(self.HorizontalRubberBand)

对重写函数的调用:

^{pr2}$

不缩放图表: not zoomed

水平缩放图表(由正弦波组成): zoomed


Tags: 函数selftrueinitchart图表图片曲线
1条回答
网友
1楼 · 发布于 2024-09-24 22:28:05

好吧,问题是OpenGL,它在所有其他控件之上创建了一个透明的小部件,这是一个无法设置动画的单独小部件: https://doc.qt.io/qt-5/qabstractseries.html#useOpenGL-prop

The OpenGL acceleration of series drawing is meant for use cases that need fast drawing of large numbers of points. It is optimized for efficiency, and therefore the series using it lack support for many features available to non-accelerated series:

Series animations are not supported for accelerated series.

...

所以简单的注释curve.setUseOpenGL(True)就解决了这个问题。在

相关问题 更多 >