Разработка для iPhone: производительность Core-Plot Низкая при обработке больших данных - PullRequest
1 голос
/ 10 февраля 2012

Разработка iPhone: низкая производительность Core-Plot при обработке больших данных.

Я пытался поместить 500 данных в график. Производительность показывает, что это действительно медленно.

И большинство диаграмм CandleStick все смешиваются ...

У кого-нибудь есть решение для меня, пожалуйста?

Ответы [ 3 ]

7 голосов
/ 11 февраля 2012
  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;
    
1 голос
/ 09 августа 2017

Мы сделали несколько сравнений скоростей в iOS Charts, и одним из них был Core-plot. К сожалению, Core-plot был настолько медленным, что не смог сделать первый тест !!

Были и другие компоненты диаграммы, которые могли обрабатывать большие данные намного эффективнее.

Результаты теста и настройки теста здесь: https://www.scichart.com/ios-chart-performance-comparison

В табличном формате результаты сравнения между четырьмя основными поставщиками iOS для диаграмм можно найти здесь.

iOS Chart Performance Comparison

Раскрытие, я технический руководитель проекта SciChart

1 голос
/ 10 февраля 2012

Подготовьте образец ваших данных!Не отображайте все 500 точек данных, если вам не нужно рисовать их все.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...