#220 Color 3d Plot Layer display problems


The Color 3D Plot layers are not correctly displayed.
I import a text file with the following content:
1.0, 3.0, 4.0
2.0, 5.0, 6.0
where the first column contains time instants (in sec) and the remaining two columns are values.
After import, the first data point is displayed at ~2 seconds, the second data point at ~3 seconds and the data values (2nd and 3rd column) that are displayed are:
6.0, 3.0
5.0, 3.0
which does not entirely match our input file (instead of 6.0, 3.0 it should be 6.0, 4.0).
If I instead only import a single dimension of the data (by ignoring e.g. the last column) the corresponding Time Values layer is correct and has no error.

This issue seems to appear on versions 2.3 and 2.5, tested on Ubuntu 14.04 and Mac OS.


  • Chris Cannam

    Chris Cannam - 2016-03-04

    You're right, something is seriously wrong here. Looking into it. Thanks.

  • Chris Cannam

    Chris Cannam - 2016-03-04

    I found:

    • The underlying data model is fine. Sessions saved from SV, and layers exported from SV, contain the right data.
    • The values at time 1.0 (the first data in the file) are not being displayed at all. If you mouse-over the area of canvas to the left of the time 2.0 data, SV will show you in the popup display which values should be displayed, and those are correct, it's "only" the coloured squares that are missing.
    • The values at time 2.0 are being displayed correctly and in the correct place (these are the 5.0 and 6.0 values).
    • The values to the right of those, both labelled 3.0, are completely spurious and arise from requesting too many columns from the source model.
    • The problem only occurs for imported layers that start at a non-zero time. If you add another row at the start of the file with time 0.0, the whole thing will be displayed correctly.
    • There is also a problem with the Edit Layer Data dialog -- if you call this up for the layer it shows all of the data, but with the wrong timestamps (offset by one second).

    I fixed a confusion about model bin numbers vs screen display elements, which was the root cause of the failure to handle non-zero start times properly, and a fencepost error in calculating where to start drawing. I also fixed the failure to account for start time in the Edit Layer Data dialog.

    These fixes are in the repository, so will be in the next release. Thanks for the clear bug report!

  • florian krebs

    florian krebs - 2016-03-07

    Hi Chris,

    thanks for the super-fast answer!

    I cloned, compiled and installed the newest version of the repository. The old example is working now.

    However, if I set up a new input file with:
    0.0, 0.0, 0.0
    1.5, 3.0, 4.0
    2.0, 5.0, 6.0

    I get the data displayed at 0, 1.5 and 3 (instead of 2) seconds. Apparently the difference between the first two timestamps is taken as the constant stepsize for all remaining datapoints. Could that be?

    Thanks again for looking into this!

  • Chris Cannam

    Chris Cannam - 2016-03-07

    Yes, that is the way the model/layer works here -- SV doesn't have any way to represent a grid with "variable width" columns. I have a pending requirement to improve the import dialog so that it makes this sort of tradeoff clearer, so that you realise this is what will happen, as I agree that its current apparent behaviour is confusing. But the actual behaviour is unlikely to change in the near future.

    Last edit: Chris Cannam 2016-03-07

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks