history not rendering line

Issue #340 resolved
Lars Gerchow created an issue

For some reason I havend figured out yet some frontend of ours sometimes produces unphysical high values (~1e170) during run transitions. This causes some problems in the history rendering.
With the y-axis autoscaled the displayed duration is only showing that value. (see attached screenshots).
When I set an y-axis limit, the line of the variable with the out-of-bound value is not drawn/colored.
However, hovering the cursor where the line should be shows the values.
I did not check at what threshold of value the bug appears.

Comments (4)

  1. Stefan Ritt

    I wold suggest that the problem gets solved at the source, and not trying to cure symptoms. At the source you can easily check each value before it gets into the ODB, and suppress unphysical values. If I do that on the plotting side, I have to check each and every value for that. If you have history plots with millions of points, this can slow down the history plotting dramatically.

  2. Lars Gerchow reporter

    Totally agree to solve it at the source and didn’t want to suggest a filtering at the plotting side. Just wanted to raise the issue as I don’t know at which magnitude of unphysical values the issue arises. Not that there could be some physical still relevant ranges where an ‘out-of-window’ value can trigger this behavior. Can’t test it right now but can try next week and report.

  3. Stefan Ritt

    Had a further look at that. A value of 1E170 causes a line to draw (off-screen) which is a few lightyears long and will take forever to render. Therefor the graphics API just ignores such a line. I added now some code to limit the length to like +-100’000 pixels, so now one should see vertical lines in such a case. Please note that the autoscaling still works correctly (and always did). In your second plot above you had ymax on autoscale and fixed ymin to zero. So all your “normal” data were correctly drawn directly on the X-Axis which can clearly be seen. If you have ymin on autoscale (put “-inf” into the ODB), you can better see how everything just sits on the x-axis.

  4. Log in to comment