Ответ 1
Да, вы можете сделать это достаточно легко. Для каждой полученной точки данных добавьте ее к массиву значений для отображения. Когда эти точки данных поступают, вызовите -reloadData
на графике основного графика (или просто на конкретном графике), чтобы перерисовать график, передав массив, к -numbersForPlot:field:recordIndexRange:
вы только что добавили значение в ответ на -numbersForPlot:field:recordIndexRange:
метод делегата.
Если вам нужно настроить диапазон графика для отслеживания точек данных (для движущегося тикера), пересчитайте новый CPPlotRange для оси X и установите для xRange
свойство xRange
пространства xRange
.
Используйте примеры CPTestApp-iPhone, AAPLot или StockPlot в качестве шаблонов для настройки общей линейной диаграммы и изменения с этой начальной точки.
Я делаю нечто похожее на это на Mac в научном приложении:
(источник: sunsetlakesoftware.com)