Plotly – 在线和离线绘图
Plotly – 在线和离线绘图
下一章涉及在线和离线绘图的设置。让我们首先研究在线绘图的设置。
在线绘图的设置
在线绘图的数据和图表保存在您的plot.ly 帐户中。在线绘图由两种方法生成,这两种方法都会为绘图创建一个唯一的url并将其保存在您的 Plotly 帐户中。
-
py.plot() – 返回唯一的 url 并可选择打开 url。
-
py.iplot() – 在Jupyter Notebook 中工作以在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 分叉历史选项卡。
当前,选择了绘图选项卡。数据选项卡显示包含 x 和y数据点的网格。从 Python & R 选项卡中,您可以查看与 Python、R、JSON、Matlab 等中当前绘图相对应的代码。以下快照显示了上面生成的绘图的 Python 代码 –
离线绘图的设置
Plotly 允许您离线生成图形并将它们保存在本地机器中。该plotly.offline.plot()函数创建一个保存在本地和Web浏览器里面打开一个独立的HTML。
在Jupyter Notebook 中离线工作时使用plotly.offline.iplot()以在Notebook中显示绘图。
注– Plotly的版本1.9.4+需要进行脱机打印。
更改脚本中的plot() 函数语句并运行。一个名为temp-plot.html 的HTML 文件将在本地创建并在 Web 浏览器中打开。
plotly.offline.plot( { "data": data,"layout": go.Layout(title = "hello world")}, auto_open = True)