Plotly - 在线和离线绘图


下一章介绍在线和离线绘图的设置。我们先来研究一下在线绘图的设置。

在线绘图设置

在线绘图的数据图表保存在您的plot.ly 帐户中。在线绘图通过两种方法生成,这两种方法都为绘图创建唯一的url并将其保存在您的 Plotly 帐户中。

  • py.plot() - 返回唯一的 url 并可选择打开该 url。

  • py.iplot() - 在Jupyter Notebook中工作时在笔记本中显示绘图。

我们现在将显示以弧度表示的角度与其正弦值的简单绘图。首先,使用numpy 库中的arange()函数获取角度在 0 到 2π 之间的 ndarray 对象。该 ndarray 对象用作图表x 轴上的值。必须在y 轴上显示的 x 角度的相应正弦值通过以下语句获得 -

import numpy as np
import math #needed for definition of pi
xpoints = np.arange(0, math.pi*2, 0.05)
ypoints = np.sin(xpoints)

接下来,使用graph_objs 模块中的Scatter()函数创建散点跟踪。

trace0 = go.Scatter(
   x = xpoints,
   y = ypoints
)
data = [trace0]

使用上面的列表对象作为plot()函数的参数。

py.plot(data, filename = 'Sine wave', auto_open=True)

将以下脚本保存为plotly1.py

import plotly
plotly.tools.set_credentials_file(username='lathkar', api_key='********************')
import plotly.plotly as py
import plotly.graph_objs as go
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]
py.plot(data, filename = 'Sine wave', auto_open=True)

从命令行执行上述脚本。结果图将显示在浏览器中指定的 URL 处,如下所述。

$ python plotly1.py
High five! You successfully sent some data to your account on plotly. 
View your plot in your browser at https://plot.ly/~lathkar/0
绘制图表

在显示的图表上方,您将找到“绘图”、“数据”、“Python 和 Rand Forking 历史记录”选项卡。

当前,“绘图”选项卡处于选中状态。数据选项卡显示包含 x 和y数据点的网格。从 Python & R 选项卡中,您可以查看与 Python、R、JSON、Matlab 等中的当前绘图相对应的代码。以下快照显示了上面生成的绘图的 Python 代码 -

Python代码

离线绘图设置

Plotly 允许您离线生成图表并将其保存在本地计算机中。plotly.offline.plot ()函数创建一个独立的 HTML,该 HTML 保存在本地并在 Web 浏览器中打开。

在Jupyter Notebook中离线工作时,使用plotly.offline.iplot()在笔记本中显示绘图。

注意-离线绘图需要Plotly 版本1.9.4+ 。

更改脚本中的plot()函数语句并运行。将在本地创建名为temp-plot.html的 HTML 文件并在 Web 浏览器中打开。

plotly.offline.plot(
   { "data": data,"layout": go.Layout(title = "hello world")}, auto_open = True)
离线绘图