В науке о данных визуальное представление данных - это первоклассный гражданин. Мы объединяем различные диаграммы, чтобы лучше понять данные и скрытые в них отношения. Если вы работаете над ролью анализа данных, вам необходимо использовать соответствующие инструменты визуализации.
В серии статей мы даем вам подробную презентацию известной библиотеки построения графиков в экосистеме Python: Plotly. В первой части этой серии мы поговорим о том, почему мы решили представить вам Plotly вместо других библиотек, а также об базовой архитектуре библиотеки Plotly, которая будет полезна для понимания ее основных принципов работы.
Удовольствие от визуализации: СЮЖЕТНО
Plotly - это библиотека с открытым исходным кодом, которая предоставляет полный набор типов диаграмм, а также инструменты для создания динамических панелей мониторинга. Вы можете думать о Plotly как о наборе инструментов, поскольку он интегрируется или расширяется с такими библиотеками, как Dash или Chart Studio, для создания интерактивных панелей мониторинга. Чтобы понять, о чем мы говорим, нажмите на ссылку ниже, и вы увидите анимированный график:
Атрибуты и графики журнала атрибутов | коробчатый сюжет, сделанный Мехтаппатемком | plotly
Интерактивный график Mehtappathemc и данные «Attributes and Attributes Log Graphics представляют собой прямоугольную диаграмму, показывающую… chart-studio.plotly.com »
Основное внимание в Plotly уделяется интерактивности и визуальному качеству. Таким образом, он в первую очередь поддерживает динамические диаграммы и анимацию. В этом основное отличие других библиотек визуализации, таких как matplotlib или seaborn. Диаграммы, созданные с помощью Plotly, по умолчанию являются динамическими и анимированными, а также поддерживает универсальную площадку для создания динамических панелей мониторинга с постоянно меняющимися потоками данных.
Plotly поддерживает динамические диаграммы и анимацию в качестве первого принципа, и в этом заключается основное различие между другими библиотеками визуализации, такими как matplotlib или seaborn.
Основные его свойства можно резюмировать следующим образом:
- Plotly можно использовать со многими языками, включая R, Python и Java.
- Знания JavaScript вообще не требуются. Вы кодируете Plotly на выбранном вами поддерживаемом языке.
- Важная особенность Plotly заключается в том, как он обрабатывает графики как JSON. Каждый визуал Plotly - это объект JSON. Почему это важно? Таким образом можно получить доступ к визуальному элементу и использовать его на разных языках программирования.
- С помощью Plotly вы можете не только строить специальные диаграммы, но и создавать динамические информационные панели. Dash - полезное расширение Plotly для создания веб-приложений. Вы можете использовать его для создания информационных панелей, поддерживающих взаимодействие с пользователем.
- Chart Studio позволяет создавать и обновлять нужную графику без какого-либо кодирования. У него очень простой и удобный интерфейс. Это особенно полезно в таких областях, как бизнес-аналитика.
- Plotly позволяет просматривать весь набор данных на одном рисунке, что очень важно для взаимодействия с пользователем. На одном экране можно создать множество различных графических взаимодействий с помощью функции «Добавить пользовательские элементы управления».
- Поддерживается преобразование диаграмм Matplotlib в диаграммы Plotly.
- Plotly был добавлен в серверную часть Pandas для построения графиков с новой версией Pandas. Таким образом, мы можем создавать графики на Pandas, не импортируя Plotly Express.
Как установить Plotly
В этой серии статей мы будем использовать Plotly на Python 3. В качестве среды IDE мы выберем Jupyter Notebooks. После того, как вы установили Python и Jupyter, вам следует установить пакет Plotly.
Вы можете установить последнюю версию Plotly, открыв терминал (или командную строку) и набрав команду ниже:
pip install plotly
Если вы выбрали диспетчер пакетов conda, вы можете установить его, используя:
conda install -c plotly
А если вы хотите установить его из записной книжки Jupyter, вы можете сделать это, выполнив следующую команду в ячейке записной книжки:
!pip install plotly
Базовая архитектура библиотеки Plotly
В библиотеке Plotly есть следующие модули:
- Graph_objs (plotly. graphs_objs): это модуль, содержащий объекты или шаблоны фигур, используемые для визуализации. Graph_objs - это низкоуровневый интерфейс к рисункам, графикам и макету. Объекты графа можно превратить в их словарное представление Python. Точно так же вы можете превратить представление JSON в объект графика.
- Plotly Express (plotly.express): Plotly Express - это высокоуровневый API Plotly, и с помощью этого модуля рисовать диаграммы намного проще. Мы даже можем нарисовать всю фигуру с помощью одной строчки кода. При этом он относительно новый, и в документации может отсутствовать достаточная помощь.
- Подзаголовки ( make_subplots ): этот модуль содержит вспомогательные функции для макетов многослойных фигур. Рисунки с предопределенными частями, настроенными в макете.
- Фабрики фигур (plotly.figure_factory): Этот модуль предоставляет множество специальных типов фигур, поэтому рисовать их в Plotly или Plotly Express довольно сложно. Эти цифры можно легко построить с помощью Фабрики фигур. К этим диаграммам относятся: аннотированные тепловые карты, дендрограммы, диаграммы Ганта, графики колчана, графики линий тока, таблицы, тройные контурные графики, триангулированные графики поверхности.
- I / O: Этот модуль представляет собой низкоуровневый интерфейс для отображения, чтения и записи цифр для статических изображений, JSON, html и т. Д.
Типы использования
Мы можем работать с библиотекой Plotly онлайн и офлайн.
Использование в Интернете
Рисунки, нарисованные онлайн, сохраняются в облаке Plotly. Если у вас есть бесплатная учетная запись, она всегда доступна другим. Мы не любим этот тип использования и не будем использовать его в оставшейся части этой серии. Но для справки, мы хотели кратко об этом поговорить здесь.
Для использования в Интернете вы должны сначала создать учетную запись на Plotly, и вы должны создать ключ API с этой учетной записью и идентифицировать его в коде, который вы будете запускать.
import chart_studio chart_studio.tools.set_credentials_file(username=' ', api_key=' ')
Автономное использование
Используя автономный режим, мы можем получить цифры, подобные тем, которые мы получаем от matplotlib или seaborn. Цифры, полученные в результате автономной работы, будут храниться на локальном компьютере. Чтобы использовать этот режим, нам нужно вызвать графики из автономного класса следующим образом:
import plotly import plotly.offline as offline offline.plot([{'x': [7, 5, 1, 0], 'y': [11, 2, 5, 5]}])
Если вы хотите использовать полученный рисунок в интерактивном режиме, вы можете сохранить его как файл png или использовать с Chart Studio (собственный инструмент редактирования Plotly) из меню Plotly в углу созданного рисунка:
Если вы хотите отобразить рисунок как выходную ячейку в своей записной книжке, вы можете сделать это с помощью команды режима записной книжки следующим образом:
import plotly import plotly.offline as offline offline.init_notebook_mode(connected=True) offline.plot([{'x': [7, 5, 1, 0], 'y': [11, 2, 5, 5]}])
Фигуры в Plotly
Основная единица работы в Plotly - это рисунок. Рисунок, созданный с помощью библиотеки Plotly, состоит из двух компонентов: данных и макета.
Данные - это список следов. Каждая трасса представляет собой объект типа словаря, который содержит отображаемые значения. Каждый элемент рисунка обозначен следом. Трассировка состоит из набора данных и типа этих данных.
#Trace examples trace = go.Box(y=y0,name ="employee") trace1 = go.Scatter( x=[1, 2, 3, 4],y=[16, 5, 11, 9]) fig.add_trace(trace) fig.add_trace(trace1)
Макет также представляет собой словарь, описывающий свойства рисунка, показывающего данные. В отличие от параметров конфигурации трассировки, параметры макета применяются к фигуре в целом.
#Layout example fig.update_layout( height=700, width=1000, title_text="Log graphs", showlegend=False, )
Вывод
Теперь, когда мы закончили обзор библиотеки Plotly, мы можем продолжить с ее помощью рисовать наши диаграммы. В следующих статьях этой серии мы будем работать с Plotly и Plotly Express. В частности, мы рассмотрим следующие типы диаграмм:
- Базовые диаграммы (линия, столбик, точечная диаграмма, круговая диаграмма….)
- Статистические диаграммы (гистограмма, прямоугольная диаграмма….)
- Научные карты (контурные графики, тепловые карты…)
- Финансовые диаграммы (временные ряды и оси дат, водопадные диаграммы, ..)
- Добавить настраиваемые элементы управления (раскрывающиеся меню, настраиваемые кнопки и т. Д.)
- Карты (Bubble Maps,…)
- 3D-диаграммы (3D-диаграммы, 3D-графики и т. Д.)
- Анимация
Если вы не хотите пропустить следующие статьи, следите за Bootrain на Medium и других платформах. Спасибо за чтение!