25 августа 2011

Новости c конференции UseR! 2011



В период с 16 по 18 августа состоялась седьмая ежегодная международная конференция UseR!. В этом году организатором конференции выступила Кафедра статистики Университета г. Уорвик, Великобритания. Проведение данного форума преследует три основные цели:
  • Обсуждение тенденций развития языка R, ставшего сегодня лингва-франка в области статистических вычислений и анализа данных;
  • Предоставление платформы, где происходит обмен идеями по использованию R для статистического анализа и визуализации данных;
  • Обзор новых возможностей быстро развивающегося R-проекта.

04 августа 2011

Создаем интерактивную веб-графику несколькими строками R-кода



В 2006 г. выступление профессора Ханса Рослинга на конференции "Технологии, Развелечения, Дизайн" (TED, Technology Entertainment Design) произвело своего рода революцию в способах интерактивной визуализации многомерных данных (см. также здесь). Речь идет об анимационных графиках, которые проф. Рослинг использовал в своей презентации для анализа социально-экономической ситуации в мире за последние 50 лет.

Пример графика такого типа приведен ниже. На нем отражена динамика продаж трех видов фруктов (Яблоки, Бананы, Апельсины) в двух регионах (Запад и Восток). Имеются обширные возможности для визуализации зависимостей между различными переменными. Например, мы можем выбрать переменную "Время" для отображения на оси абсцисс и "Затраты" на оси ординат, раскрасить "пузыри" на графике в соответствии с регионом (Color / Регион), прикрепить названия фруктов к каждому "пузырю" (меню Select), и посмотреть, что получается, нажав кнопку воспроизведения. Попробуйте разные сочетания, чтобы "прочувствовать" возможности этого инструмента.




Приведенный выше график был построен на основе таблицы данных Fruits, входящей в состав библиотеки googleVis. Подключаем эту таблицу к рабочей среде R и просматриваем ее содержимое:
data(Fruits)
Fruits




В оригинальной таблице все названия приведены на английском языке. Я заменил их на русскоязычные аналоги позднее непосредственно в html-коде графика.

Для создания графика была использована функция gvisMotionChart(). Она имеет четыре основных аргумента:
gvisMotionChart(data, idvar = "id", timevar="date", chartid),
где data - имя таблицы данных; idvar - имя номинальной переменной для которой строится график; chartid - аргумент, позволяющий присвоить графику уникальное имя (если оставить этот аргумент незадействованным, графику будет автоматически присвоено случайным образом подобранное имя). В нашем случае команда выглядела следующим образом:
M <- gvisMotionChart(Fruits, idvar = "Fruit", timevar = "Year")
Объект M является списком из трех списков (проверьте командой str(M)). Первые два элемента этого списка содержат информацию о типе графика (MotionChart) и его уникальное имя (chartid). Третий элемент списка наиболее интересен, поскольку он содержит html код графика. Этот третий элемент в свою очередь включает четыре других элемента: header ("шапка"), chart - непосредственно код графика, caption - подпись графика, и footer ("футер"). html-код графика можно легко извлечь командой
print(M, tag = "chart")
а затем скопировать и вставить на страницу вебсайта.

При помощи функций библиотеки googleVis можно создавать множество различных типов графиков, а также объединять их на одной странице. Для ознакомления с имеющимися возможностями выполните команду
demo(googleVis)
Рассмотренный в этом сообщении пример был заимствован из руководства пользователя googleVis.


Создано при помощи Pretty R на сайте inside-R.org