Сегодня расскажу немного о D3. Для тех, кто впервые слышит это странное слово — речь про библиотеку для визуализации в браузере. Строго говоря, это больше чем библиотека для визуализации — с помощью D3 можно манипулировать DOM (можно сказать, что в ней есть подмножество функциональности jQuery). Однако, в основном, её используют именно для визуализации.
Итак, сегодня:
D3, безусловно, это мощная штука. Однако, если использовать её для построения простых графиков — это как купить кирпичный мини-завод, чтобы построить одну дачу. Поэтому, на основе D3 есть множество библиотек для графиков, самая известная из которых — NVD3.
По большому счёту, чтобы понять её возможности проще перейти на сайт. На главной странице есть интересные примеры, обратите внимание, что они интерактивные. От себя добавлю, что использовали её в одном большом проекте, понравилось. Есть мелкие глюки. Но их, так или иначе, можно обойти или исправить. К сожалению, NVD3 пока не поддерживает D3 4.0 (о которой ниже).
Не так давно вышла четвёртая версия D3. Это реальная такая мажорная версия (не то что этот ваш Chrome :). Улучшены некоторые алгоритмы, добавлены новые, библиотека стала более гранулированной, местами улучшено API. Всё это реально круто, жаль только библиотеки, работающие на её основе, не смогут перейти на новую версию мгновенно…
Признаюсь сразу, сам MetricsGraphics.js пока не пробовал. Думаю что для интерактивных графиков, у которых ось X — всегда время, выглядит удобно. Посмотрите сами на примеры, мне понравился Linked Graphic.
Если кто-то попробует в реальном проекте — отпишитесь, буду благодарен.