离线状态下在Jupyter Notebook中使用Plotly绘制折线图
本文介绍如何在Jupyter Notebook中配置Plotly离线模式,无需网络连接即可生成交互式图表。通过初始化offline模块并设置connected=False,实现本地渲染。示例代码展示了如何读取日志数据,利用Scatter对象构建多系列折线图与散点图,并保存为离线HTML文件,适用于数据分析和模型训练结果的本地展示。
Jupyter Notebook离线配置Plotly
首先创建一个新的Python3单元格,随后在单元格开头输入以下代码并执行:
初始化离线模式代码
import plotly
import plotly.offline as py
py.init_notebook_mode(connected=False)
import plotly.graph_objs as go
文件体积注意事项
需要注意的是,上述操作实际上是将Plotly的库文件嵌入到了ipynb文件内部,因此保存后的ipynb文件体积通常会较大,一般超过5M。
Plotly离线折线图绘制示例
补充知识:Plotly绘制离线图例(折线)
此处不再赘述,直接查看代码实现。
测试数据log.txt
#log.txt
1 9 15
2 9 16
1 10 17
2 10 18
1 9 19
完整绘图脚本
#!/usr/bin/env python
import plotly.offline as pltoff
import plotly.graph_objs as go
def line_plots(name="line_plots.html"):
dataset = {
'x': [],
'y1': [],
'y2': [],
'y3': []
}
with open("./log.txt") as f:
i = 0
for line in f:
items = line.split()
dataset['x'].append(i)
dataset['y1'].append(items[0])
dataset['y2'].append(items[1])
dataset['y3'].append(items[2])
i += 1
data_g = []
# 构建 数据关系,折线图
x_y1 = go.Scatter(
x=dataset['x'],
y=dataset['y1'],
mode='lines',
name='lines')
data_g.append(x_y1)
x_y2 = go.Scatter(
x=dataset['x'],
y=dataset['y2'],
mode='markers',
name='markers')
data_g.append(x_y2)
x_y3 = go.Scatter(
x=dataset['x'],
y=dataset['y3'],
mode='lines+markers',
name='lines+markers')
data_g.append(x_y3)
# 设置图表布局
layout = go.Layout(title="Line plots",
xaxis={'title': 'X'}, yaxis={'title': 'Y'})
fig = go.Figure(data=data_g, layout=layout)
# 生成离线html
pltoff.plot(fig, filename=name)
if __name__ == '__main__':
line_plots()

总结
以上关于在离线状态下于Jupyter Notebook中使用Plotly的实例即为全部内容,希望能为大家提供参考,也希望大家多多支持本站。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









