New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Timeline sparkline bug #615

Closed
sheymann opened this Issue May 5, 2012 · 5 comments

Comments

Projects
None yet
3 participants
@sheymann
Copy link
Member

sheymann commented May 5, 2012

Way to reproduce:

  • File > Generate > Dynamic Graph Example
  • Statistics > Dynamic # Nodes > Run with window size = 2, tick = 1
  • Timeline > Charts > Node Count

Screenshot: http://imageshack.us/photo/my-images/443/timelinebug.png/

@ghost ghost assigned mbastian May 5, 2012

@eduramiba

This comment has been minimized.

Copy link
Member

eduramiba commented May 5, 2012

This is caused by any dynamic statistic that takes a window > step.
This produces intervals that overlap, and that is why these strange graphics appear.

For example 9.66 to 10.66 then 10.16 to 11.16

Maybe we can add validation so the user can't input a step lower than the window.

@sheymann

This comment has been minimized.

Copy link
Member

sheymann commented May 5, 2012

No, this is intentional: this is how sliding windows work, and they are very useful. An acceptable solution is to rebuild intervals so that they are reduced. In your example, 9.66 to 10.16 then 10.16 to 11.16. Another example:

Computed intervals are on 0 to 2, 1 to 3, 2 to 4, 3 to 5. Then they are rebuilt as:
0 to 1, 1 to 2, 2 to 3, 3 to 4, 4 to 5.

But this is a bad example, we should consider the dynamic metrics as follows. Each value is computed from a starting point to a starting point + size of the window. Then we add the tick to the starting point, and compute a new value. So the sparkline should draw this value at each starting point until the new starting point.

Is it clearer? You may refer to the image embedded in Gephi dynamic metrics, icon help (i).

@sheymann

This comment has been minimized.

Copy link
Member

sheymann commented May 15, 2012

Eduardo, can you provide guidance to help me fix this bug? However if it touches to Gephi architecture I must let you do it.

@eduramiba

This comment has been minimized.

Copy link
Member

eduramiba commented May 15, 2012

Hi,
This only needs a simple code addition to TimelineControllerImpl (starting at line 310) in Desktop Timeline module.

My idea is:
Build levels from intervals start up to intervals end, unless next interval start is before current interval end. In that case, current level only goes from current interval start to next interval start, and so on.

Here is the necessary code if that matches your idea https://gist.github.com/2705818 Tested it seems to work fine.

@ghost ghost assigned sheymann May 16, 2012

sheymann added a commit that referenced this issue May 20, 2012

@sheymann

This comment has been minimized.

Copy link
Member

sheymann commented May 20, 2012

So simple once you know the answer :) Thanks @eduramiba!

@sheymann sheymann closed this May 20, 2012

@mbastian mbastian added Fix Released and removed Fix Committed labels Nov 21, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment