Plotly chart not showing in Jupyter notebook

大城市里の小女人 提交于 2021-02-04 11:10:20

问题


I have been trying to solve this issue for hours. I followed the steps on the Plotly website and the chart still doesn't show in the notebook.

This is my code for the plot:

colorway = ['#f3cec9', '#e7a4b6', '#cd7eaf', '#a262a9', '#6f4d96', '#3d3b72', '#182844']

data = [
    go.Scatter(
        x = immigration.columns,
        y = immigration.loc[state],
                   name=state) for state in immigration.index]

layout = go.Layout(
    title='Immigration',
    yaxis=dict(title='Immigration %'),
    xaxis=dict(title='Years'),
    colorway=colorway,
    font=dict(family='Courier New, monospace', size=18, color='#7f7f7f')
)

fig = go.Figure(data=data, layout=layout)
iplot(fig)

And this is everything I have imported into my notebook:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import plotly.plotly as py
import plotly.graph_objs as go
from plotly.offline import init_notebook_mode, iplot

init_notebook_mode(connected=True)  

回答1:


You need to change init_notebook_mode call, if you want to work in offline mode.

Such that:

# Import the necessaries libraries
import plotly.offline as pyo
import plotly.graph_objs as go
# Set notebook mode to work in offline
pyo.init_notebook_mode()
# Create traces
trace0 = go.Scatter(
    x=[1, 2, 3, 4],
    y=[10, 15, 13, 17]
)
trace1 = go.Scatter(
    x=[1, 2, 3, 4],
    y=[16, 5, 11, 9]
)
# Fill out data with our traces
data = [trace0, trace1]
# Plot it and save as basic-line.html
pyo.iplot(data, filename = 'basic-line')

Output should be shown in your jupyter notebook:




回答2:


In case you want to use Jupyter lab, you will have to install the plotly jupyterlab extension: https://github.com/jupyterlab/jupyter-renderers/tree/master/packages/plotly-extension.

Update 2020-01-07

See the new link: https://www.npmjs.com/package/@jupyterlab/plotly-extension

Update 2020-07-07

https://plotly.com/python/getting-started/#jupyterlab-support-python-35

Simple solution: jupyter labextension install jupyterlab-plotly




回答3:


To use Plotly in Jupyter Lab make sure you have ipywidgets and plotly installed and then run the following:

jupyter labextension install jupyterlab-plotly

# OPTIONAL: Jupyter widgets extension

jupyter labextension install @jupyter-widgets/jupyterlab-manager plotlywidget

Source docs

And here's the troubleshooting guide for Plotly with Jupyter Lab.




回答4:


Assuming you are using JupyterLab, accordingly to Plotly Troubleshooting

In order to use plotly in JupyterLab, you must have the extensions installed as detailed in the Getting Started guide. There are two extensions: jupyterlab-plotly for rendering figures with fig.show() and plotlywidget for the FigureWidget.

Assuming that you have installed all the libraries correctly (make sure you have ipywidgets and nodejs installed) and assuming one is using conda, access conda prompt for the environment one is working (the "Server" environment).

List the labs' extensions with

jupyter labextension list

In my case I got

JupyterLab v2.2.9
No installed extensions

Then I will need to install the extensions jupyterlab-plotly (the library nodejs will be required now)

jupyter labextension install jupyterlab-plotly@4.14.3

and plotlywidget [optional]

jupyter labextension install @jupyter-widgets/jupyterlab-manager plotlywidget@4.14.1

Now you'll be able to visualize your plots.


Note

If you use JupyterLab with multiple python environments, the extensions must be installed in the "server" environment, and the plotly python library must be installed in each "processing" environment that you intend to use.



来源:https://stackoverflow.com/questions/52771328/plotly-chart-not-showing-in-jupyter-notebook

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!