dev express 15.2图表绘制性能问题
2023-12-26 17:41:25
dev express 15.2
绘制曲线
- 前端代码
<dxc:ChartControl Grid.Row="1">
<dxc:XYDiagram2D EnableAxisXNavigation="True">
<dxc:LineSeries2D x:Name="series" CrosshairLabelPattern="{}{A} : {V:F2}"/>
</dxc:XYDiagram2D>
</dxc:ChartControl>
- 后端代码
Dispatcher.BeginInvoke(new Action(() =>
{
Random random = new Random();
series.Points.BeginInit();
series.Points.Clear();
for (int i = 0; i < 100000; i++)
series.Points.Add(new SeriesPoint((double)i, random.NextDouble()));
series.Points.EndInit();
}), DispatcherPriority.Background);
执行的结果图标很卡,一样的代码和dev express的demo性能差距很大
窗口不要最大化,窗口太大显示效率明显降低,devexpress demo最大化之后也存在这个问题。
ScottPlot
dotnet中绘图可以使用scottplot,基于opengl比livechart的基于skia效率高很多
nuget安装scottplot.wpf
- 前端代码
xmlns:sp="clr-namespace:ScottPlot;assembly=ScottPlot.WPF"
...
<sp:WpfPlot Grid.Row="1" Name="series"></sp:WpfPlot>
- 后端代码
Random random = new Random();
double[] pointCollection = new double[100000];
Parallel.For(0, 1, (i) =>
{
for (int j = 0; j < pointCollection.Length; j++)
pointCollection[j] = random.NextDouble();
});
series.Plot.AddSignal(pointCollection);
series.Refresh();
文章来源:https://blog.csdn.net/daoer_sofu/article/details/135214979
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!