离线状态下在Jupyter Notebook中使用Plotly绘制折线图

Nora
Nora
发布时间:2026-10-13| 3人浏览过
原创

本文介绍如何在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的实例即为全部内容,希望能为大家提供参考,也希望大家多多支持本站。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。