QwtPlot setAxisScale,它的工作原理

QwtPlot setAxisScale, how it works?

本文关键字:工作 setAxisScale QwtPlot      更新时间:2023-10-16

I将QwtPlot子类化为:

class RealPlot : public QwtPlot {
public:
    RealPlot () {
        ...
        setAxisScale(QwtPlot::xBottom, -5, 5);
    }
    void addPoint(Point p) {
        ...
        setAxisScale(QwtPlot::xBottom, min, max);
    }
}

每次添加新点时,我都想重新缩放(的横轴)图。所以我在点添加到曲线之后调用setAxisScale(QwtPlot::xBottom, min, max);

问题是没有重新缩放绘图。构造函数中对setAxisScale(QwtPlot::xBottom, -5, 5);的调用确实会重新缩放绘图。但setAxisScale(QwtPlot::xBottom, min, max);没有。为什么?

QwtPlot::replot丢失,无法进行更改。在启动的情况下,你总是会遇到一个初始的replot——这就是它在那里工作的原因。