Мне нужно визуализировать и отображать диаграммы (на данный момент гистограммы, но позже могут потребоваться другие типы) в приложении для iPhone, над которым я работаю. Я немного осмотрелся, и не похоже, что есть действительно хорошие, зрелые библиотеки для построения графиков для iPhone. Я также искал что-то написанное для Cocoa на Mac, которое можно было бы адаптировать, но пока не нашел ничего интересного.
Кто-нибудь имел дело с этим раньше? Есть рекомендации?
Я нашел Core Plot , но, похоже, он находится на ранних стадиях разработки.
Отредактируйте, чтобы добавить некоторые детали требований (в их нынешнем виде;))
- Гистограммы
- Горизонтальные гистограммы
- Двухуровневые гистограммы
- Метки осей (включая повернутые на 90 градусов по оси Y)
- Ярлыки над каждой полосой на графике
- Затененный или нестандартный фон
Ответы:
Одним из многих факторов, побудивших проект Core Plot, было отсутствие хороших фреймворков для построения графиков на iPhone. Core Plot также охватывает множество других вариантов использования, включая настольные системы, но его дизайн с самого начала включал поддержку iPhone. Он почти готов к использованию и в настоящее время используется в нескольких приложениях для iPhone и OS X.
Изменить 2/10
Core Plot прошел долгий путь с тех пор, как я впервые опубликовал резюме. В фреймворке теперь есть гистограммы (включая горизонтальные гистограммы, как мне кажется), метки осей (включая произвольные вращения), а также заливки и фоны для графиков. Я не уверен насчет столбчатых диаграмм с накоплением, но их нетрудно добавить в
CPBarPlot
класс, реализующий гистограммы. Что касается аннотаций, естьCPAnotation
класс, который вы можете подклассифицировать, чтобы добавить свои аннотации, если нет точных функций, которые вам нужны.Проект на github .
источник
В качестве коммерческой альтернативы CorePlot я бы рекомендовал попробовать ShinobiControls , у них есть довольно красивые диаграммы. У них также очень хорошая производительность, рендеринг диаграмм с более чем 100 000 точек при 60 кадрах в секунду и поддержка мультитач.
Как полное раскрытие информации , я работаю в Scott Logic, которая является материнской компанией ShinobiControls.
источник
У меня есть собственная библиотека PowerPlot, которая доступна по модели с двумя лицензиями.
Вы можете просто перейти по ссылке выше, чтобы установить демонстрационное приложение, которое демонстрирует несколько образцов диаграмм. Вы также можете скачать GPL-версию библиотеки и проверить, соответствует ли она вашим потребностям. За исключением горизонтальных столбчатых диаграмм, он имеет требуемые функции - в частности, гистограммы, линейчатые диаграммы с накоплением, различные положения и ориентации меток осей.
источник
Я провел свой собственный поиск год или два назад и в итоге создал свои собственные классы линейного графика, потому что не смог найти ничего, что работало бы именно так, как мне нужно. Однако стоит обратить внимание на два основных - SM2DGraphView и GraphX . Я не пробовал ни того, ни другого в проекте iPhone, но знаю, что SM2DGraphView имеет открытый исходный код, поэтому вы можете изменить его при необходимости.
Я также рассматривал возможность использования WebView для использования графической библиотеки JavaScript, но это всего лишь мысль.
источник
появилась новая красивая 3D-библиотека круговых диаграмм. 3D-диаграммы, которые можно вращать и масштабировать пальцами + протокол для получения информации о нажатых срезах
http://iphone.orpi.pl/?p=20
источник
Мне нужна была радарная диаграмма (или диаграмма паутины), но я не мог ее найти, поэтому я сделал свою собственную реализацию:
RPRadarChart
Вы можете использовать его где угодно, если хотите, дайте мне знать! Я буду постепенно добавлять к нему больше функций, если вы хотите что-то конкретное, спросите меня через github.
источник
Теоретически вы можете использовать Google Chart API вместе с оболочкой Cocoa . Это могло быть легкое решение.
источник
Это тоже кажется нормальным
s7graphview
(но на самом деле никогда не пробовал).
источник