основной сюжет и NSDate (iPhone) - PullRequest
3 голосов
/ 08 июня 2010

Я хочу построить линейный график, где ось X определяется как количество дней между двумя датами, а ось Y - это значение, которое изменяется в каждый из дней.

Я могу построить значения y как NSNumber, но я не знаю, как установить диапазоны и разметку на оси x. Я посмотрел пример даты в каталоге «examples» основного дистрибутива, но нашел его немного запутанным.

Кто-нибудь знает учебник или пример кода, который может помочь мне в этом отношении?

Заранее спасибо.

1 Ответ

5 голосов
/ 09 июня 2010

Необходимо учитывать две основные концепции: как форматировать даты и как преобразовывать даты в числа для диапазонов осей и значений данных.

Core Plot предоставляет класс CPTimeFormatter, который заботится о форматировании. Вы предоставляете NSDateFormatter, установленный в любом формате, который вы хотите использовать, и контрольную дату, чтобы определить источник числовой шкалы. Установите для свойства labelFormatter на оси инициализированное значение CPTimeFormatter, и оно позаботится о преобразовании числовых данных в даты и применении желаемого формата.

Ключом к вычислению числовых значений является то, что вам нужно найти разницу между вашей контрольной датой и интересующей датой в секундах. Вот почему в примере программы определено oneDay = 24 * 60 * 60.

24 часа / день * 60 минут / час * 60 секунд / мин = 86400 секунд / день.

...