Выбрать главу

Для визуализации данных и создания схем есть много хороших инструментов. Например, очень много возможностей у Python и NumPy. Кое–кто из нашего сообщества балуется с R, но в конечном счете в большинстве проектов мы все равно используем библиотеки графиков на Javascript типа d3, Flot и RaphaelJS. Наконец, мы много экспериментировали с составлением диаграмм, и для этого нам очень интересным показался Tilemill.

Как использовать визуализацию данных для поиска взаимосвязей

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

— Уильям С. Кливленд: визуализация данных

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

Другими словами, когда есть смысл идти дальше табличного представления? Ответ: почти всегда. Самих таблиц явно недостаточно для общего представления массива данных. И только таблицы не дают быстро определить закономерности в данных. Самый простой пример – географические закономерности, которые можно наблюдать только после визуализации данных на схеме. Есть и другие закономерности, о которых мы поговорим далее в этой главе.

Выявление взаимосвязей с помощью визуализации

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

Каждая новая визуализация, скорее всего, поможет увидеть взаимосвязи между данными. Какие–то взаимосвязи нам уже известны (но еще не доказаны), тогда как другие могут быть совершенно новыми и даже неожиданными. Какие–то новые взаимосвязи могут дать начало истории, в то время как другие будут просто результатом ошибки, которые наверняка обнаружатся в процессе визуализации.

Чтобы более эффективно находить взаимосвязи в данных, очень помогают описанные ниже шаги:

Рис 68. Data insights: a visualization (Gregor Aisch)

Как визуализировать данные

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

Если у вас сравнительно небольшое количество элементов, то очень наглядными будут таблицы. Они демонстрируют подписи и значения в наиболее структурированном и организованном виде, раскрывая весь потенциал, а также позволяя сортировать и фильтровать данные. Кроме того, Эдвард Туфт предложил включить в колонки таблиц маленькие графики (одна графа на строку или линейный график – спарклайн). Те не менее, как было сказано во введении, у таблиц есть свои ограничения. Они отлично подходят для демонстрации одномерных значений, сильно отличающихся от других (например, первые 10), но когда дело доходит до сравнения нескольких измерений одновременно (например, изменение численности населения страны в течение времени), они мало полезны.

Рис 69. Tips from Tufte: Sparklines (Gregor Aisch)

В целом, графики позволяют изображать величины, придавая им визуальные характеристики геометрических фигур. Очень многое было написано об эффективности индивидуальных визуальных характеристик, но если суммировать коротко: с цветами работать сложно, ключевым является расположение. На диаграмме рассеяния, например, два измерения передаются координатами на осях x и y. Вы даже можете изобразить третье измерение – цветом или размером изображенных символов. Линейные графики особенно подходят для изображения изменений во времени, а гистограммы отлично подходят для сравнения категорийных данных. Можно накладывать элементы друг на друга. Если хотите сравнить небольшие группы данных, можно изобразить различные варианты одного графика (их также называют сетчатыми диаграммами). Во всех графиках можно использовать различные шкалы (линейную или логарифмическую, например), чтобы изучить данные с разных сторон.

На самом деле большинство данных, с которыми мы имеем дело, касаются реальных людей. Задача диаграмм – соотнести данные с нашим материальным миром. Представьте себе статистику преступлений, распределенную географически. Главное, что вы хотите увидеть – это места совершения преступлений. На диаграммах также можно обозначать географические связи между данными, например, изменение статистики в направлении с севера на юг или от городов к сельской местности.

Рис 70. Cloropeth (Gregor Aisch)

Что касается связей, четвертый по важности тип визуализации – это график. Графики показывают взаимосвязи (линии) между элементами данных (узлами). Расположение узлов высчитывается более–менее сложными алгоритмами разметки графиков, которые позволяют сразу же увидеть структуру внутри сети. Главное в визуализации с помощью графиков – найти верный способ моделирования самой сети. Не все массивы данных уже имеют встроенные связи, и даже в тех массивах, где они есть, это не самые интересные характеристики. Иногда журналисту приходится самому находить линии между узлами. Отличный пример —  Социальный граф Сената США, где линии соединяют сенаторов, проголосовавших одинаково в 65% случаев.

Анализируйте и интерпретируйте то, что видите

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

 Что я вижу на рисунке? То ли это, что я ожидал увидеть?

 Просматриваются ли какие–то интересные закономерности?

 Что это означает в контексте имеющихся данных?

Иногда может получиться изображение, которое, несмотря на внешнюю складность, не говорит вам ничего интересного. Но из любого изображения почти всегда можно что–то почерпнуть, каким бы обычным оно ни было.

Фиксируйте свои наблюдения и действия

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

В большинстве случаев, когда вы начинаете работать с новым массивом данных, у вас уже есть какие–то ожидания и предположения насчет данных. Обычно тот или иной массив данных интересует вас по конкретной причине. Неплохо начать ведение «журнала» с этих первоначальных предположений. Это поможет определиться с точкой зрения и уменьшит риск неверного истолкования данных только потому, что вы обнаружили то, что хотели найти.