Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

plotting is very slow with large amounts of particles (>300k). Options for Oxyplot GL plot? #2137

Copy link
Copy link
@Spordoz

Description

@Spordoz
Issue body actions

In my case I am plotting the values of measured particles. The amount of particles in a file can range from 1000 particles to 1.25 milion particles.
I am plotting these with a scatter series with logarithmic axes. When plotting around 10~30k points, this takes barely any time, about 0.05 seconds or less (render time). But the there seems to be a exponential factor to the render time. In my tests, 3k points took around 0.007 seconds, 30k 0.08 seconds, 300k 7.4 seconds. The initial render taking this long is one thing, but panning is also basically impossible, taking a similar time to update.

For alternatives I tried another open source plotting library we had on our minds at first: ScottPlot.
ScottPlot in normal mode experiences similar problems with similar render times, which makes sense given they also run skiaSharp under the hood.
But ScottPlot has also implemented an OpenGL version of the wpf plot through skiasharp. This plot can plot the 300k particles in less than a second and update with about 300 fps while panning and zooming.

We currently have our plots written completely in Oxyplot, so I have the following questions: Is there a way to improve the render/update time with these amounts of particles with the current version? Are there any plans to implement an SkiaSharp openGL version of PlotView in Oxyplot?
If not, would such a version be welcome if we attempted to implement it ourselves? And how feasable would this be?

  • Oxyplot.SkiaSharp.Wpf plotview
  • OxyPlot version: 2.2.0
  • Edgerendering mode preferSpeed
  • MarkerType Circle (other types do not privide significant improvement)
  • markersize 1.2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Morty Proxy This is a proxified and sanitized view of the page, visit original site.