beto-rodriguez / LiveCharts2

Simple, flexible, interactive & powerful charts, maps and gauges for .Net, LiveCharts2 can now practically run everywhere Maui, Uno Platform, Blazor-wasm, WPF, WinForms, Xamarin, Avalonia, WinUI, UWP.
https://livecharts.dev
MIT License
4.38k stars 572 forks source link

High performance or Geared version for LiveCharts2 for .NET Maui and WinUI #1700

Open AnksOne opened 1 week ago

AnksOne commented 1 week ago

I'm experiencing performance issues with LiveCharts2 in my MAUI and WinUI projects. When handling around 10,000 data points and inserting approximately 500 points per second, the charts become sluggish and eventually crash.

I would like to know if a high-performance version of LiveCharts2, similar to the Geared version in LiveCharts v0, is available or planned. This would help manage large datasets and high-frequency data updates more efficiently.

Also there appears to be a version "v2.0.0-beta.350 (An intro to high performance)" but it is not available on NuGet yet. Any update on this?

I've explored optimizing data handling and reducing the number of data points, but these measures haven't resolved the performance issues.

I found a discussion indicating that a high-performance package for LiveCharts2 was planned and would be available soon. However, I couldn't find a specific release date or further information. Any updates on this would be greatly appreciated.

danielgruethling commented 1 week ago

So I am not the only person experiencing issues with trying to add a lot of data points. Though mine are also oscillating a lot.

That's reassuring and worrying at the same time.

BlueFrog76 commented 2 days ago

@beto-rodriguez What would help to get the high performance package finalized and tested so you can feel ready to release it? I have a WinForms and WPF project that I would really like to use LiveCharts2 with for a lot of reasons. It is really an impressive chart library with a lot of great functionality and very nice theming capabilities. But we are routinely processing large data sets of 10,000 points or more, which begin to become unresponsive with more points than this. I have a single set of data from a data logger that produces 262,000 points. Rather than just asking when it will be done, I'm interested in helping you get it finished. How can I help you get this package finished and released? I could potentially make one or two developers available to help.

tjorvenK commented 20 hours ago

I am experiencing similar Issues with my data. Compared to you I don't have many data points. My graph updates in realtime, and I receive data at a rate between 40 to 100hz. When the Data is oscillating really much, the graph starts to lag noticeably. I am not sure, if I have enough skills to help creating a performance package, but nonetheless I'm willing to help in any way I can.