Эффективная визуализация данных имеет первостепенное значение для любой организации в современном мире, ориентированном на данные. Способность выводить сложные шаблоны из данных и объяснять их с помощью визуальных метафор дала новые направления в визуализации данных. На самом деле это самый важный аспект любой платформы бизнес-аналитики, которую вы используете сегодня, такой как Tableau, Qlik и Power BI.

Даже в области машинного обучения визуализация используется для объяснения моделей (XAI), отслеживания экспериментов, улучшения модели и т. д. с помощью таких инструментов, как Weight & Biases и TensorFlow. Эти инструменты тесно интегрируют визуализацию с рядом аналитических рабочих процессов, позволяя разрабатывать информационные панели и отчеты для представления заинтересованным сторонам.

Теперь основными целями этих продуктов BI и ML, использующих визуализацию, являются ускорение аналитических рабочих процессов для определенной персоны потребителя данных (аналитик данных, ученый) и сделать их легко презентабельными. Вот ключевые термины:

  • ускорение — ускорение анализа
  • легко презентабельно — панель самообслуживания

Например,разработка информационной панели на основе некоторой бизнес-логики (после извлечения-преобразования-загрузки). Поэтому внимание к аспекту диаграммы немного меньше. Что я имею в виду? 🤔 Это означает, что возможности визуализации по настройке ограничены имеющимися в нашем распоряжении инструментами. Нам нужно будет полагаться на диаграммы, которые изначально доступны как часть продукта, чтобы представить наш анализ. Однако могут быть сценарии, в которых вы захотите использовать готовую диаграмму.

Это также относится к недавнему твиту, который вызвал у меня интерес. Теперь у Эмили есть вполне законный вопрос, а также несколько подсказок в этом твите. Лично я довольно много думал об этом в первые дни работы с BI (часть данных, а именно часть).

Мы ответили на часть вопроса в нашем обсуждении выше. Готовые продукты, такие как Tableau или Power BI, дают мне гибкость и простоту использования, чтобы просто перетащить диаграмму, добавить некоторые данные и сделать ее презентабельной в виде панели инструментов 📊 — Готово ⚡️ Однако, если я хочу для визуального представления данных на совершенно другой диаграмме (больше переменных, интуитивно понятный пользовательский интерфейс и т. д.), мне, вероятно, потребуется кодировать это. Здесь на помощь приходит библиотека визуализации. Давайте поговорим о некоторых с точки зрения языка программирования:

JavaScript для визуализации:

Библиотеки на основе JavaScript добились огромного успеха в создании решений для визуализации с нуля. Есть ли причина для этого? Ну, JS сам по себе не имеет встроенных возможностей визуализации. Однако форматы изображений, такие как функции манипулирования SVG и DOM, позволяют нам рисовать фигуры (линии, прямоугольники, круги), добавлять текст и т. д. в браузере. Рассмотрим приведенный ниже принудительный граф, реализованный с использованием D3.js — одной из самых популярных сред визуализации JS.

D3.js — это эффективная платформа для разработки высококачественных интерактивных визуализаций. Самое главное, он позволяет вам связывать ваши данные вместе с SVG, HTML и CSS для создания динамических и интерактивных визуализаций в вашем браузере. Теперь, возвращаясь к миру BI, хорошая новость заключается в том, что такие инструменты, как Qlik или Tableau, позволяют вам интегрировать любую (в основном) визуализацию, которую вы создали с помощью D3.js, в их платформу, и это действительно дает нам преимущество 🚀 — мы больше не ограничивается только диаграммами, изначально доступными на платформе.

Другие JS-библиотеки — Plotly.js, Highcharts, AnyChart и др.

Python для визуализации:

Разработка визуализации с использованием Python — довольно новое явление, но оно находится на подъеме. Есть несколько причин. Во-первых, кривая обучения📈! Python очень доступен как язык программирования благодаря упрощенному синтаксису. Это облегчает обучение. Во-вторых, он широко используется в рабочем процессе Data Science, и, конечно же, визуализация является частью этого процесса. Такие задачи, как исследовательский анализ данных (EDA), обычно выполняются с использованием пакетов на основе Python, а возможность работать в той же среде (как Python) повышает ценность и ускоряет работу, а не переходит к другой. Итак, какие наиболее часто используемые библиотеки на основе Python?

Имейте в виду, что библиотеки визуализации на основе Python — это, по сути, оболочки для JS-библиотек, таких как D3.js. Это означает, что он все еще должен отображать необходимые файлы HTML, JS и CSS внутри. Что касается настройки, некоторые из этих библиотек позволяют вам возиться с основными визуальными элементами. Например, изменение размера прямоугольника на гистограмме или реализация другой цветовой палитры. Итак, это действительно зависит от уровня абстракции в этой конкретной библиотеке.

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

Какие еще языки программирования для визуализации?

Помимо JavaScript и Python, Джулия также предоставляет несколько пакетов для визуализации данных. Джулия неоднократно использовалась в области науки о данных и научных вычислений, поэтому имеет смысл иметь несколько библиотек, предназначенных для простой реализации данных, а именно. Некоторые упоминания — plots.jl, GadFly.jl, VegaLit.jl и т. д.

Из других новостей: вчера на WWDC 2022 Apple выпустила совершенно новую библиотеку визуализации под названием Swift Charts, тем самым предоставив программистам Swift (и SwiftUI) возможности визуализации. Это поможет получить те же возможности визуализации, которые вы получаете сегодня с продуктами на базе Apple, такими как Apple Watch (трекер сна, фитнес), iPhone и Mac (экранное время) и т. д.

Чтобы закончить наше обсуждение, давайте вернемся к вопросу — Инструменты или код?

Такие инструменты, как Tableau и Power BI, упрощают создание панелей самообслуживания с функцией перетаскивания, что в конечном итоге помогает ускорить аналитические рабочие процессы. Однако, если мы хотим создать визуальные метафоры с нуля, нам нужно будет запрограммировать их так, как мы этого хотим. Это идеально подходит для таких областей, как исследования в области визуализации, о которых мы поговорим в следующем посте.

Дайте мне знать, что вы думаете.

~Дипанкар