You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python环境下Plotly表格无法在Jupyter Lab中显示的问题求助

解决Jupyter Lab中Plotly表格无法显示的问题

我之前也踩过这个坑,Jupyter Lab里Plotly图表不显示大多是扩展依赖没配置到位,或者代码里藏着隐性问题。给你几个一步步排查的方案:

1. 先搞定Jupyter Lab的Plotly扩展依赖

这是最常见的原因——Jupyter Lab不像Jupyter Notebook那样默认支持Plotly渲染,必须安装对应扩展:

  • 先确保Plotly版本在4.0以上(新版本兼容性更好):
    pip install --upgrade plotly
    
  • 然后安装Jupyter Lab的Plotly扩展和widget依赖(Plotly 5.x+版本可以用这个简化命令):
    pip install jupyterlab "ipywidgets>=7.6"
    jupyter labextension install jupyterlab-plotly @jupyter-widgets/jupyterlab-manager
    
  • 安装完成后必须重启Jupyter Lab,别在原来的会话里硬扛,重启后再打开你的notebook测试。

2. 简化代码,排查数据/列名问题

你代码里手动列了[df.A, df.M, df.R...],万一某个列名拼写错了、或者CSV里根本没这个列,就会导致表格没有数据,自然显示不出来。改成通用写法更稳妥:

import pandas as pd
import plotly.graph_objects as go

# 先确认数据加载正常
df = pd.read_csv('df.csv')
print(df.head())  # 打印前几行,确保数据正确加载、列名也匹配预期

fig = go.Figure(data=[go.Table(
    header=dict(values=list(df.columns), fill_color='paleturquoise', align='left'),
    cells=dict(values=df.values.T, fill_color='lavender', align='left')
)])
fig.show()

用df.values.T自动获取所有列的数值,避免手动列错列名的问题,同时先验证数据加载是否正常。

3. 离线模式的正确打开方式

如果你非要用离线模式,记得用pyo.iplot()而不是fig.show():

import plotly.offline as pyo
pyo.init_notebook_mode(connected=True)

# 生成fig之后用这个渲染
pyo.iplot(fig)

不过新版本Plotly已经不需要离线模式了,只要扩展装对,fig.show()就能正常渲染。

4. 最后排查环境兼容性

  • 尽量用Chrome或Firefox浏览器,Edge也可以,但避开IE、Safari旧版本;
  • 把Jupyter Lab升级到3.x以上版本,旧版本兼容性问题较多:
    pip install --upgrade jupyterlab
    

按这些步骤走,应该能解决你的问题。

内容的提问来源于stack exchange,提问作者dingaro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 11:17:26