Анимированные диаграммы с помощью Raphaël

В этом руководстве мы покажем вам, как создавать анимированные диаграммы с помощью небольшой JavaScript библиотеки Raphael.

Почему она? Потому что, именно эта библиотека идеально подходит для работы с векторной графикой.

Идея реализации состоит в том, что мы будем рисовать геометрию с помощью математических функций и отображать количество процентов в центральной окружности. Приступим.

Разметка

HTML структура будет состоять из основного контейнера с классом get. Этот контейнер будет содержать все данные, необходимые для отрисовки дуг. Далее, создадим новый элемент DIV с id diagram, который и будет контейнером для дуг:

CSS

В CSS мы будем делать только две вещи: прятать элементы с классом get и устанавливать ширину и высоту для элемента DIV с id diagram:

JavaScript

Основная идея состоит в том, что сначала создаем Raphael объект (переменная r) и отрисовываем нашу первую окружность с радиусом rad.

Далее создаем новую окружность в Raphael объекте. Центрируем окружность (x: 300px и y: 300px) и добавляем в нее некоторый текст.

Для Raphael объекта существуют следующие настройки:

  • alpha – угол дуги
  • random – случайное число из заданного диапазона
  • sx, sy – начальная точка отрисовки
  • x, y – конечная точка отрисовки
  • путь
    • M – перейти к начальной точке без отрисовки. Все данные должны начинаться с команды moveto.
    • A – radius-x, radius-y x-axis-rotation, large-arc-flag, sweep-flag, x, y

В дальнейшем, при получении необходимых данных (проценты, цвет дуги и текст), мы будем строить каждую дугу, увеличивая ее радиус.

В конце мы добавим некоторые эффекты анимации при наведении на дугу курсором мышки и изменим текст в центральной окружности на проценты.

Выводы

Сегодня мы изучили основные возможности Raphael. Это очень мощная библиотека, с помощью которой можно создавать удивительные геометрические вещи. Достаточно взглянуть на примеры ее использования.
Ну, а если на вашей мебели появились первые результаты ее использования, то достаточно лишь купить мебельный воск и замазать им все царапины и отверстия. Например, там вы можете купить его и совсем недорого.


Один комментарий на “Анимированные диаграммы с помощью Raphaël

Оставить комментарий