我试图在 Visual Studio Code 中打印一个 plotly plot 并发现了这个错误:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-40-e07b5feb5ded> in <module>
30
31 fig.update_layout(height=nrows*500)
---> 32 fig.show()
C:\Python38\lib\site-packages\plotly\basedatatypes.py in show(self, *args, **kwargs)
3147 import plotly.io as pio
3148
-> 3149 return pio.show(self, *args, **kwargs)
3150
3151 def to_json(self, *args, **kwargs):
C:\Python38\lib\site-packages\plotly\io\_renderers.py in show(fig, renderer, validate, **kwargs)
383
384 if not nbformat or LooseVersion(nbformat.__version__) < LooseVersion("4.2.0"):
--> 385 raise ValueError(
386 "Mime type rendering requires nbformat>=4.2.0 but it is not installed"
387 )
ValueError: Mime type rendering requires nbformat>=4.2.0 but it is not installed
我使用的代码:
import plotly.graph_objects as go
from plotly.subplots import make_subplots
import plotly.express as px
df = df[df['Data']>0]
df['Timestamp'] = pd.to_datetime(df['Timestamp'])
df = df[(df['Id'] ==1)|(df['Id'] ==6)]
dfp = pd.pivot_table(df,
values='Data',
index=['Timestamp'],
columns=['Id'],
)
nrows = len(dfp.columns)
fig = make_subplots(rows=nrows,
cols=1,
subplot_titles=['Id '+str(c) for c in dfp.columns])
# add traces
x = 1
for i, col in enumerate(dfp.columns):
fig.add_trace(go.Scatter(x=dfp.index, y=dfp[col].values,
name = 'Id '+str(col),
mode = 'lines',
),
row=i+1,
col=1)
fig.update_layout(height=nrows*500)
fig.show()
我在控制台中尝试了
pip install nbformat
以下GitHub上的提要和stackoverflow上的这个问题
但它没有用。
但是,代码似乎可以在删除最后两行的情况下运行:
fig.update_layout(height=nrows*500)
fig.show()
方法一
通过
重新安装ipykernelpip install ipykernel
方法二
pip install --upgrade nbformat
!pip install nbformat
对于那些使用 conda 的人,这对我有用:
验证您的 conda 环境的名称:
conda info --envs
假设是“myenv”,继续:
conda activate myenv
conda install nbformat
然后重启内核。
我也刚遇到这个问题。就我而言,原来我只安装了
ipykernel
,但最好安装jupyter
元包。
参考:https://code.visualstudio.com/docs/datascience/jupyter-notebooks
配置
- 苹果操作系统
- VS 代码
- 蟒蛇3.x
方法
- 输入以下代码:
pip3 install --upgrade nbformat
- 在VS代码提示符下重启内核
- 再次运行你的代码
现在应该可以了。
重启 ipykernel 对我有用。