Jupyter绘图报nbformat>=4.2.0未安装错误 重装后仍无法解决
Jupyter Notebook Plotly绘图nbformat报错解决方案
报错说明
执行Plotly交互式绘图代码时抛出如下错误:
ValueError: Mime type rendering requires nbformat>=4.2.0 but it is not installed
已经尝试过pip install --upgrade nbformat、conda install -c conda-forge nbformat、升级Jupyter版本均无效,使用的绘图代码如下:
import plotly.express as px import numpy as np df = px.data.gapminder().query("year == 2007") df["world"] = "world" # in order to have a single root node fig = px.treemap(df, path=['world', 'continent', 'country'], values='pop', color='lifeExp', hover_data=['iso_alpha'], color_continuous_scale='RdBu', color_continuous_midpoint=np.average(df['lifeExp'], weights=df['pop'])) fig.show()
解决方案
- 第一步:确认当前Jupyter内核对应的Python解释器路径,避免包安装到其他环境。在当前报错的Notebook中运行如下代码:
import sys print(sys.executable)
- 第二步:使用打印出的解释器路径针对性升级nbformat,假设打印出的路径为
/opt/anaconda3/envs/your_env/bin/python,执行命令:
/opt/anaconda3/envs/your_env/bin/python -m pip install --upgrade nbformat>=4.2.0
如果使用conda管理环境,先激活对应环境再安装:
conda activate your_env conda install -c conda-forge nbformat>=4.2.0
- 第三步:如果升级后仍报错,可手动指定Plotly渲染器适配Notebook,在绘图代码的
fig.show()前添加一行配置:
fig.renderer = "notebook"
也可以在调用show方法时直接指定:
fig.show(renderer="notebook")
- 临时替代方案:如果仅需输出图片无需交互,可安装kaleido后渲染为静态图片:
pip install kaleido
修改show方法参数:
fig.show(renderer="png")
- 所有配置完成后重启Jupyter内核,重新运行代码即可。
内容的提问来源于stack exchange,提问作者bbbbblock
相关产品推荐
相关产品推荐

