-
Notifications
You must be signed in to change notification settings - Fork 981
Description
The main advantage of SignalPlot is it's well optimized rendering, giving you the ability to render millions of points (I tried it with 100 million and it was still usable). But it only works for data that comes in a fixed interval. ScatterPlot, on the other hand, does not need evenly spaced data, but for that very reason it is really hard, if not impossible to optimize.
So my suggestion is: make a new Plottable that's a mix of SignalPlot and ScatterPlot. What I mean by that, the Plottable should allow data that's not evenly spaced, but all the points must come in order (eg. xs[] = { 0, 1, 5, 6, 12 } is good, but xs[]= { 0, 4, 2, 7, 5 } isn't). Then, the RenderHighDensity function (similar to the one in PlottableSignal) could divide and compact the data to render according to the x values of the points, instead of their indexes (like it does in PlottableSignal).
In my experience, everyone who wants to plot some data has that data in order, but the interval between the points isn't always the same. I think the library would benefit a lot from this new plottable for that very reason.