Plotly - 软件包结构

Plotly Python 软件包有三个主要模块,如下所示 −

  • plotly.plotly
  • plotly.graph_objs
  • plotly.tools

plotly.plotly 模块包含需要 Plotly 服务器响应的函数。此模块中的函数是本地计算机和 Plotly 之间的接口。

plotly.graph_objs 模块是最重要的模块,它包含构成您看到的图的对象的所有类定义。以下图形对象定义如下 −

  • 图形,
  • 数据,
  • 布局,
  • 不同的图形轨迹,如散点图、箱线图、直方图等。
Plotly Module

所有图形对象都是字典和列表类对象,用于生成和/或修改 Plotly 图的每个特征。

plotly.tools 模块包含许多有用的功能,可促进和增强 Plotly 体验。此模块定义了用于子图生成、在IPython 笔记本中嵌入 Plotly 图、保存和检索您的凭据的函数。

图由 Figure 对象表示,该对象表示在plotly.graph_objs 模块中定义的 Figure 类。它的构造函数需要以下参数 −

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'})

绘图可以有绘图标题以及轴标题。它还可以有注释来指示其他描述。

最后,有一个由go.Figure() 函数创建的Figure 对象。它是一个类似字典的对象,包含数据对象和布局对象。最终绘制图形对象。

py.iplot(fig)