Проверьте Flot и MilkChart . Первый расширяет jQuery , второй MooTools . Оба используют элемент canvas , который теперь поддерживается всеми основными браузерами (даже IE с включением дополнительного скрипта). Посмотрите на вкладку reputation в вашем профиле stackoverflow, чтобы увидеть, как она используется. Я использовал Flot (еще не пробовал MilkChart) в проекте раньше, и хотя способ передачи данных в него может показаться немного неинтуитивным на первый взгляд, вы обнаружите, что он на самом деле довольно мощный для решения без флеш-карт , Flot также определяет пользовательские события, которые вы можете использовать для определения взаимодействий диаграмм. Flot поддерживает составные гистограммы с помощью плагина, и я считаю, что вы можете создавать с его помощью и кластерные гистограммы.
Вы всегда можете использовать какое-то декларативное графическое решение, использующее элементы div
в виде столбцов на графике, но это не так просто и непротиворечиво в браузерах, как рисование диаграмм с помощью canvas.
Если вы подозреваете какое-либо из этих решений, вы можете отправить данные в службу для возврата статического изображения. Google Charting API поддерживает сгруппированные гистограммы, или вы можете использовать какой-либо сервис, который вы размещаете самостоятельно.
Моя рекомендация - это первое решение, использующее холст HTML, специально использующее Flot, поскольку это библиотека, с которой у меня больше всего опыта, и за которую я могу поручиться. Может быть, у кого-то есть комментарии по поводу MilkChart.
EDIT:
Другая библиотека, которую я забыл упомянуть, это PlotKit , которая расширяет MochiKit . Я не использовал его, но, видимо, он поддерживает не только построение диаграмм с использованием элемента canvas
, но также поддерживает построение диаграмм с использованием SVG . Масштабируемая векторная графика предлагает вам еще одну декларативную графическую опцию, помимо взлома решения с использованием HTML, однако я не уверен, насколько кроссбраузерным будет решение на основе SVG (особенно в IE).
EDIT:
Здесь - это плагин jQuery, который строит графики с использованием элементов div. Мне лично не нравится этот вариант, потому что я думаю, что он более сложный и менее легко настраиваемый, чем некоторые другие параметры. Я чувствую, что использование элементов HTML для создания сложной декларативной графики (хотя и впечатляющей) является своего рода взломанным решением и, по моему опыту, в какой-то момент вызовет проблемы.