Найти тему
LabelMe

Altair: функциональная библиотека для визуализации данных

Оглавление

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

Сегодня LabelMe расскажет про еще один инструмент, который станет швейцарским ножом в арсенале любого специалиста по данным. Просим любить и жаловать - Altair.

Что такое Altair

Altair - это библиотека визуализации статистических данных для Python. Он обеспечивает простой и понятный синтаксис для создания как статических, так и интерактивных визуализаций.

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

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

Начало работы с Altair

Сначала мы генерируем макет данных, который состоит из двух фреймов данных: первый содержит заказы ресторана, а второй - цены на товары в чеке.

Значения генерируются с помощью функций numpy. Затем мы добавляем тип заказа, используя список из 100 позиций. Функция shuffle нужна для рандомизации списка. Давайте взглянем на фреймы данных, которые мы только что создали.

Слева - фрейм данных заказов; справа - фрейм данных цен.
Слева - фрейм данных заказов; справа - фрейм данных цен.

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

Давайте сначала создадим простой график, чтобы представить структуру синтаксиса Altair.

-3

Мы начинаем с передачи данных в Chart object. Данные могут быть как в форме фрейма данных Pandas, так и строки URL-адреса, указывающего на файл json или csv. Затем выбирается тип визуализации (например, mark_circle, mark_line и так далее).

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

Как создать диаграмму разброса значений

Рассмотрим случай, когда нам нужно создать диаграмму разброса значений цены и чаевых. Они находятся в разных фреймах данных. Один из вариантов - объединить два фрейма данных и использовать эти два столбца в точечной диаграмме.

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

-4

Функция transform_lookup аналогична функции merge в Pandas. Столбец, используемый для сопоставления наблюдений (то есть строки), передается параметру lookup. Параметр fields используется для выбора нужных столбцов из другого фрейма данных.

Как интегрировать компоненты фильтрации в график

Мы также можем интегрировать в наш график компонент фильтрации. Построим точки данных с ценой более 10 долларов.

-5

Давайте подробно рассмотрим каждый шаг:

  • transform_lookup: ищет цену во фрейме цен.
  • transform_filter: фильтрует цены меньше 20 долларов.
  • transform_aggregate: группирует цены по типу заказа и вычисляет среднее значение.

Убедитесь, что вы передали имя агрегированного столбца функции encode.

Заключение

Фильтрация, объединение и группировка необходимы для исследовательского процесса анализа данных. Altair позволяет выполнять все эти операции при создании визуализаций данных в одном месте, что делает эту библиотеку полноценным инструментом для анализа данных.

Примеры, приведённые в статье, могут показаться не очень полезными, но они ясно объясняют, как эти компоненты используются в визуализациях.

Советуем подробнее изучить возможность Altair, ведь он может быть очень полезен и прост в использовании.

Другие наши статьи:

Наши соцсети:

Пикча для тупого Дзена, ведь нельзя просто задать нужную обложку.
Пикча для тупого Дзена, ведь нельзя просто задать нужную обложку.