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进行投诉反馈,一经查实,立即删除!