Plotly - Структура пакета
Пакет Plotly Python имеет три основных модуля, которые приведены ниже -
- plotly.plotly
- plotly.graph_objs
- plotly.tools
В plotly.plotly moduleсодержит функции, требующие ответа от серверов Plotly. Функции в этом модуле являются интерфейсом между вашим локальным компьютером и Plotly.
В plotly.graph_objs moduleявляется наиболее важным модулем, который содержит все определения классов для объектов, составляющих графики, которые вы видите. Определены следующие объекты графа -
- Figure,
- Data,
- ayout,
- Различные следы графика, такие как Scatter, Box, Histogram и т.п.
Все графические объекты являются объектами, подобными словарю и спискам, которые используются для создания и / или изменения каждой функции графического изображения.
В plotly.tools moduleсодержит множество полезных функций, облегчающих и улучшающих работу с Plotly. Функции дляsubplot generation, встраивание сюжетов в IPython notebooks, сохранение и получение ваших учетных данных определены в этом модуле.
График представлен объектом Figure, который представляет класс Figure, определенный в plotly.graph_objs module. Его конструктору нужны следующие параметры -
import plotly.graph_objs as go
fig = go.Figure(data, layout, frames)
В dataпараметр - это объект списка в Python. Это список всех следов, которые вы хотите нанести. Трасса - это просто имя, которое мы даем набору данных, который нужно построить. Аtrace объект назван в соответствии с тем, как вы хотите, чтобы данные отображались на поверхности построения.
Plotly предоставляет ряд объектов трассировки, таких как scatter, bar, pie, heatmap и т.д., и каждый из них возвращается соответствующими функциями в graph_objsфункции. Например:go.scatter() возвращает трассировку рассеяния.
import numpy as np
import math #needed for definition of pi
xpoints=np.arange(0, math.pi*2, 0.05)
ypoints=np.sin(xpoints)
trace0 = go.Scatter(
x = xpoints, y = ypoints
)
data = [trace0]
В layoutПараметр определяет внешний вид графика и особенности графика, которые не связаны с данными. Таким образом, мы сможем изменять такие вещи, как заголовок, заголовки осей, аннотации, легенды, интервалы, шрифт и даже рисовать фигуры поверх вашего графика.
layout = go.Layout(title = "Sine wave", xaxis = {'title':'angle'}, yaxis = {'title':'sine'})
Сюжет может иметь plot title а также ось title. Он также может иметь аннотации для обозначения других описаний.
Наконец, есть Figure object создан go.Figure() function. Это объект, подобный словарю, который содержит как объект данных, так и объект макета. В конечном итоге фигурирует объект.
py.iplot(fig)