PDA

View Full Version : Qwt patched with Qwt6.0.1_10AxisPerSide.patch Real time curve does not overlap



mondon
5th May 2014, 12:27
Hi,
we are tryng to develop an application based on Qwt that resemble an industrial recorder. Our application needs to have 4 real time curves each of them with its own axes. The axes scale can be displayed or not, depending from the user selection. We patched the qwt with Qwt6.0.1_10AxisPerSide.patch. The application works fine if we run it with one horizontal axes (time axes) and 4 vertical axes (value axes) where we plot the runtime values returned by a temparature reader. In this case the curve are perfectly overlapped as should be. We can enable and disable axes scale and the plot comes as expected.
When we run the application with 4 horizontal axes (value axis) and 1 vertical axes (time) to resemble a recorder when all axis scale are visibile the plot is obtained as expected with all curves overlapped, while if a scale is disabled the associated curve is offseted with respect to the one with the scale that is visible.

Thanks for your help.

Uwe
6th May 2014, 07:26
We patched the qwt with Qwt6.0.1_10AxisPerSide.patch.
This is an 3rd party patch that never worked properly.

Here ( http://sourceforge.net/p/qwt/code/HEAD/tree/branches/qwt-6.1-multiaxes ) you find a branch with an official implementation for multi axes. It is almost complete ( QwtPlot::sizeHint() and QwtPlotRescaler are not yet finished ) and is planned to be merged into the main line with Qwt 6.3 ( too many API changes for Qwt 6.2 ). This branch is actively maintained ( gets all bug fixes and new stuff of trunk ) and you can send bug reports.

Uwe

mondon
6th May 2014, 09:29
Thank you for your answer, I'll check the official implementation.
Yesterday I discovered that in the Qwt6.0.1 + Qwt6.0.1_10AxisPerSide.patch by setting QwtPlotLayout::setAlignCanvasToScales( true ) the overlap problems I mentioned yesterday are solved.
Thanks again,
monica