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

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

Удовольствие от визуализации: СЮЖЕТНО

Plotly - это библиотека с открытым исходным кодом, которая предоставляет полный набор типов диаграмм, а также инструменты для создания динамических панелей мониторинга. Вы можете думать о Plotly как о наборе инструментов, поскольку он интегрируется или расширяется с такими библиотеками, как Dash или Chart Studio, для создания интерактивных панелей мониторинга. Чтобы понять, о чем мы говорим, нажмите на ссылку ниже, и вы увидите анимированный график:



Основное внимание в 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 есть следующие модули:

Типы использования

Мы можем работать с библиотекой 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. В частности, мы рассмотрим следующие типы диаграмм:

Если вы не хотите пропустить следующие статьи, следите за Bootrain на Medium и других платформах. Спасибо за чтение!