本文主要是介绍dev express 15.2图表绘制性能问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
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();
这篇关于dev express 15.2图表绘制性能问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!