Obviously the layout of your plot widget is not recalculated, what should happen each time the plot gets an QEvent::LayoutRequest event. So the question is why the plot widget gets no event, when your scales are changing. Please spend some time on finding out, what happens to this event in your environment ( Qwt/Qt versions ? ) or send me small demo, if you are using Qwt 6.x.
As workaround you can post an QEvent::LayoutRequest event to the plot widget from your code ( QwtPlot::replot processes all pending layout requests ) or call QwtPlot::updateLayout() manually.
Uwe
Bookmarks