Прокручиваемый линейный график

Я пытаюсь использовать библиотеку ios-charts на основе MPAndroidCharts; однако у меня возникли проблемы с работой прокручиваемого графика.

Под прокручиваемым я подразумеваю, что я пытаюсь показать только часть данных строки и что вы можете прокручивать по горизонтали, чтобы увидеть больше результатов. Например, у меня есть 30 результатов, и я показываю только 10 за раз, а затем прокручиваю по горизонтали, чтобы увидеть больше.

Пришли к приближению, используя метод

[self.containerView setVisibleXRangeWithMinXRange:24.0f maxXRange:24.0f];

Однако это, кажется, делает прокрутку нервной, поскольку она продолжает перерисовываться.

Я ищу пример ios-charts и разъяснение методов, чтобы увидеть, на правильном ли я пути или нет.


person Pao13    schedule 18.08.2015    source источник


Ответы (1)


Аналогично вашему вопросу:

https://github.com/danielgindi/ios-charts/issues/267

Цитировать:

Я смог добиться этого, немного поиграв с ним. На самом деле это довольно прямолинейно.

диаграмма.данные = данные; // Это ГЛАВНАЯ причина, данные для графика должны быть установлены перед следующими двумя шагами, иначе они просто будут проигнорированы, как будто ничего не было установлено.

// установить максимальную точку данных x на 10, что я и хотел, показывая только 10 точек данных для линейной или гистограммы из 100 точек данных. [диаграмма setVisibleXRangeMaximum: 10]; // переместите представление диаграммы на 90 индекс X, что является последними 10 записями, которые я хочу увидеть. и он работает так, как ожидалось. [график moveViewToX:90];

Другие полезные:

https://github.com/danielgindi/ios-charts/issues/226

https://github.com/danielgindi/ios-charts/issues/258

person Wingzero    schedule 19.08.2015
comment
Спасибо за быстрый ответ, однако моя проблема не обязательно заключается в выборе того, какие значения отображать изначально, например, 5-7, которые изначально видны из набора 0-10, но это при прокрутке; прокрутка кажется прерывистой. во время отладки; Я заметил, что он продолжает переходить к методу drawRect графика и постоянно все перерисовывает. - person Pao13; 19.08.2015
comment
да, он будет вызывать drawRect по дизайну - person Wingzero; 19.08.2015
comment
Вы также столкнулись с небольшим сбоем производительности во время прокрутки? На самом деле я стремлюсь сделать анимацию гладкой; Одна идея, о которой я думаю, — это визуализировать уже весь график; затем поместите его в меньший вид прокрутки. Я открыт для идей и предложений. - person Pao13; 19.08.2015
comment
У меня нет задержки прокрутки с учетом значений ~ 1000 y в виде линейной диаграммы. прокрутка плавная. Я не уверен, какую анимацию вы хотите сделать, но прокрутка и анимация разные. Я предполагаю, что возникнут проблемы с производительностью, если вы захотите анимировать рисование линейных или гистограмм. - person Wingzero; 19.08.2015
comment
Другой способ — использовать представление маски, действующее как представление анимации, если у вас есть огромные наборы данных. но для прокрутки у меня нет проблем. - person Wingzero; 19.08.2015
comment
не могли бы вы рассказать мне разницу между setVisibleXRangeMaximum, setVisibleXRangeMinimum, setVisibleYRangeMaximum и setVisibleXRange - person H Raval; 12.01.2017