2012-02-10 65 views
1

iPhone开发:Core-Plot性能在处理大量数据时较慢。iPhone开发:Core-Plot性能处理大量数据时较慢

我累了把500个数据放到Plot里。

的表现表明它确实很慢。

K线图都搅和在一起的大多数和...

任何人有我任何解决办法,请????

谢谢

+2

你应该用仪器来分析代码,看看它是花费其大部分时间的技术领先优势。 – benzado 2012-02-10 16:44:25

回答

1

绘制您的数据样本!如果您实际上不需要绘制全部数据点,则不要绘制所有500个数据点。

+0

谢谢您的回复。因为我在做股票图表,所以我必须将所有500个或更多数据放入其中。 – nullmicgo 2012-02-10 08:42:42

7
  1. 请注意地块面积的大小。如果您的数据点多于像素,请按照建议的@benzado筛选数据集。

  2. 使用可快速绘制的图形元素 - 不透明颜色,无梯度,无图像,无阴影。如果条只有几个像素宽,则不要同时设置填充和边框线;使用任何一个绘制得更快。

  3. 减少或消除无关的元素,如小刻度线和网格线。

  4. 使用在一次调用中提供一组点的数据源方法之一,而不是一次一个。

    -(NSArray *)numbersForPlot:(CPTPlot *)plot field:(NSUInteger)fieldEnum recordIndexRange:(NSRange)indexRange; 
    -(double *)doublesForPlot:(CPTPlot *)plot field:(NSUInteger)fieldEnum recordIndexRange:(NSRange)indexRange; 
    -(CPTNumericData *)dataForPlot:(CPTPlot *)plot field:(NSUInteger)fieldEnum recordIndexRange:(NSRange)indexRange; 
    
+0

谢谢。你有这样的例子吗? – nullmicgo 2012-02-11 03:47:41

+0

对于#4:http://code.google.com/p/core-plot/source/browse/examples/CorePlotGallery/src/plots/ColoredBarChart.m#152 – 2012-02-11 14:59:57

+0

非常感谢您的回复,Eric。实际上,我曾尝试下载这个示例项目,但是当我编译它时有很多错误(我没有改变任何东西),它说没有找到。我现在使用core-plot0.4开发蜡烛棒图形,但现在最新的是0.9,你认为我应该改为0.9吗?如果我改变,我必须改变很多编码... – nullmicgo 2012-02-13 01:45:06

0

我们做的iOS图表的一些速度比较,其中一人是核心积。不幸的是,Core-plot太慢了,无法进行第一次测试!

还有其他的图表组件能够更有效地处理大数据。

测试结果和测试设置的位置:https://www.scichart.com/ios-chart-performance-comparison

在表格格式四个主要图表的iOS提供商之间的比较的结果,可以在这里找到。

iOS Chart Performance Comparison

披露,我是SciChart项目