根据文档,Jupyter中的offline mode with plot.ly应该在调用后起作用:
from plotly.offline import download_plotlyjs, init_notebook_mode, iplot
init_notebook_mode(connected=True)
现在我要显示以下情节:
trace0 = plotly.graph_objs.Scatter(
x=[1, 2, 3, 4],
y=[10, 15, 13, 17]
)
trace1 = plotly.graph_objs.Scatter(
x=[1, 2, 3, 4],
y=[16, 5, 11, 9]
)
iplot([trace0, trace1])
结果是单元格输出区域中有很多空白。
为什么这与Jupyter Lab不兼容?
答案 0 :(得分:9)
尝试更改渲染器:
import plotly.io as pio
pio.renderers.default = 'iframe' # or 'notebook' or 'colab'
您可以像这样遍历列表以查看适合您的内容
import pandas as pd
import plotly.express as px
import plotly.io as pio
for text in pio.renderers:
print(text)
pio.renderers.default = text
df = px.data.iris()
fig = px.scatter(df, x="sepal_width", y="sepal_length", color="species")
fig.show()
答案 1 :(得分:6)
不建议使用扩展名,请使用另一个:
jupyter labextension install jupyterlab-plotly
它为我工作,并且与最新版本的plotly(当前为4.9.0)/ jupyterlab没有兼容性问题
来源:https://plotly.com/python/getting-started/,https://www.npmjs.com/package/@jupyterlab/plotly-extension
答案 2 :(得分:2)
可能正在发生一些事情。由于某种原因,您的笔记本“不受信任”吗?这将阻止Plotly javascript呈现下面的任何内容。
另一种可能性是您没有为Jupyter Lab安装Plotly扩展程序。与笔记本相比,在实验室中,对javascript可执行代码的限制更多,因此,程序包需要安装扩展程序才能在单元格下方显示任何内容。
寻找带有
jupyter labextension list
并安装它(如果缺少):jupyter labextension install @jupyterlab/plotly-extension
答案 3 :(得分:1)
可接受的解决方案对我不起作用:
ValueError: The extension "@jupyterlab/plotly-extension" does not yet support the current version of JupyterLab.
我要添加@eddygeek解决方案:
jupyter labextension install jupyterlab-plotly
加上:您需要重新启动Jupyter Lab。
答案 4 :(得分:0)
您忘记了import plotly
,我不知道,为什么当您致电plotly.graph_objs.Scatter
时没有错误
答案 5 :(得分:0)
如果您正在使用Jupyter Lab(而非Jupyter Notebook),则需要为Jupyter Lab安装“ Jupyter Renderers”扩展。 https://github.com/jupyterlab/jupyter-renderers
查看类似主题: -Using plot.ly in jupyterlab - graphics does not show -plotly basic example shows no plot in jupyter lab
答案 6 :(得分:0)
遵循以下简单步骤:
安装Node.js和NPM https://www.shaileshjha.com/how-to-install-nodejs-and-npm-on-windows-10/
安装您在此处看到的所有内容 https://github.com/plotly/plotly.py#jupyterlab-support-python-35
安装您在此处看到的所有扩展 https://github.com/jupyterlab/jupyter-renderers
您应该走的很好(尤其是如果您来自Udemy课程视频讲座61)
答案 7 :(得分:0)
我遇到了同样的问题,但是当我尝试运行以下代码时,我收到了错误消息:
$ jupyter labextension install jupyterlab-plotly@4.10.0
An error occured.
ValueError: Please install nodejs >=10.0.0 before continuing. nodejs may be
installed using conda or directly from the nodejs website.
但是我运行了“ node -v
”,而我的版本是v6.13.1
,这意味着它应该可以工作。
通过这篇文章,我找到了解决问题的方法>> Conda not recognizing that I have node installed?
我按照https://anaconda.org/conda-forge/nodejs中的建议进行安装,效果很好。
我执行了以下所有操作:
conda install -c conda-forge nodejs
conda install -c conda-forge/label/gcc7 nodejs
conda install -c conda-forge/label/cf201901 nodejs
conda install -c conda-forge/label/cf202003 nodejs '
答案 8 :(得分:0)
即使在安装后
jupyter labextension install jupyterlab-plotly
我无法在我的 jupyterlab 中获取绘图。我将 plotly 渲染器更改为 jupyterlab 并且奏效了。
import plotly.io as pio
pio.renderers.default = "jupyterlab"
答案 9 :(得分:0)
一种方法是使用 HTML 来帮助 JupyterLab 显示数字。一个例子是:
import plotly.express as px
from IPython.display import HTML
df = px.data.tips()
fig = px.scatter(df, x='total_bill', y='tip', opacity=0.65,
trendline='ols', trendline_color_override='darkblue')
HTML(fig.to_html())
答案 10 :(得分:0)
此外,如果您的 Anaconda 安装在 Windows 的根目录中,例如:C:\Anaconda\
那么这对我有用,因为我无法运行
jupyter labextension install jupyterlab-plotly
来自我的(基础)Python。
因此,首先我在我的虚拟环境中运行它:jupyter labextension list
下一个jupyter labextension install jupyterlab-plotly
在 Virtual env 中安装和测试后,
我从 Virtual Env 下的 Scripts 文件夹中复制了 jupyter-labextension-script.py
,并将其粘贴到我的主要(基本)Python 文件夹中的 Scripts 文件夹中。
现在,activate base
接下来按照这些命令:jupyter labextension list
最后jupyter labextension install jupyterlab-plotly
测试您的 Jupyterlab,您应该能够看到您的图表。