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()
Advertisement
Answer
Method 1
reinstall ipykernel via
pip install ipykernel
Method 2
pip install --upgrade nbformat