ValueError: Mime type rendering requires nbformat>=4.2.0 but it is not installed
Question:
I was trying to print a plotly plot in Visual Studio Code and caught this error:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-40-e07b5feb5ded> in <module>
30
31 fig.update_layout(height=nrows*500)
---> 32 fig.show()
C:Python38libsite-packagesplotlybasedatatypes.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:Python38libsite-packagesplotlyio_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
The code I used:
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()
I tried pip install nbformat
in the console following this feed on GitHub and this question on stackoverflow
but it did not work.
However, it seems the code could run with the last 2 rows removed:
fig.update_layout(height=nrows*500)
fig.show()
Answers:
Method 1
reinstall ipykernel via
pip install ipykernel
Method 2
pip install --upgrade nbformat
!pip install nbformat
- Install this.
- Restart your Kernel.
- Dam sure it will work!
I just ran into this problem too. In my case, it turned out I had only installed ipykernel
, but it’s best to install the jupyter
metapackage.
Reference: https://code.visualstudio.com/docs/datascience/jupyter-notebooks
For those that use conda, this worked for me:
Verify the name of your conda environment:
conda info --envs
Supposing it’s "myenv", proceed:
conda activate myenv
conda install nbformat
Then restart the kernel.
Configurations
- Mac OS
- VS code
- python 3.x
Method
- Enter the following code:
pip3 install --upgrade nbformat
- Restart the kernel in the VS code prompt
- Run your code again
It should work now.
Restarting ipykernel works for me.
I was trying to print a plotly plot in Visual Studio Code and caught this error:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-40-e07b5feb5ded> in <module>
30
31 fig.update_layout(height=nrows*500)
---> 32 fig.show()
C:Python38libsite-packagesplotlybasedatatypes.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:Python38libsite-packagesplotlyio_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
The code I used:
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()
I tried pip install nbformat
in the console following this feed on GitHub and this question on stackoverflow
but it did not work.
However, it seems the code could run with the last 2 rows removed:
fig.update_layout(height=nrows*500)
fig.show()
Method 1
reinstall ipykernel via
pip install ipykernel
Method 2
pip install --upgrade nbformat
!pip install nbformat
- Install this.
- Restart your Kernel.
- Dam sure it will work!
I just ran into this problem too. In my case, it turned out I had only installed ipykernel
, but it’s best to install the jupyter
metapackage.
Reference: https://code.visualstudio.com/docs/datascience/jupyter-notebooks
For those that use conda, this worked for me:
Verify the name of your conda environment:
conda info --envs
Supposing it’s "myenv", proceed:
conda activate myenv
conda install nbformat
Then restart the kernel.
Configurations
- Mac OS
- VS code
- python 3.x
Method
- Enter the following code:
pip3 install --upgrade nbformat
- Restart the kernel in the VS code prompt
- Run your code again
It should work now.
Restarting ipykernel works for me.