问题描述
背景
- 我正在处理 3GB 数据的数据挑战。
- 我在 jupyter notebook 中使用 ploy-express 绘制了大约 10 个图。
- 我没有使用
fig.show('notebook')
,因为它不起作用。 - 我使用了
py.init_notebook_mode()
,所有绘图都完美地显示在笔记本中。 - 它们是简单的图,每个图都有 1 年的数据,例如
fig = px.line(df,x,y,...)
然后fig.show()
在笔记本中一切正常。
问题
但是在我尝试将 notebook 转换为 HTML 文件之前,只显示了最新的 6 个图。
前 4 个图有标题、图例、轴、背景画布,当我将鼠标悬停在它们上面时,数字会弹出,但图没有显示出来,每个图都有一个不愉快的方形脸,眼睛看起来像“x”。
我试过了:
!jupyter nbconvert notebook.ipynb --to html --template classic
- 或与
--execute
- 或没有
--template
- 我通过更改
NotebookApp.max_buffer_size
增加了笔记本尺寸,这不起作用。
我怀疑这是 nbconvert
或 HTML 相关的内存限制问题,因为:
- 当我将它减少到 6 个图时,它们都显示了
- 当我添加更多的图时,第一个开始遇到这个问题,好像有内存限制。
- 我认为这些是 nbconvert 文档,但在写入 HTML 时我没有看到任何“限制”或“最大”?
有人解决过同样的问题吗? 有人可以帮忙吗?
不完美的解决方案
解决方法
无意中,我发现使用 Firefox 时所有的图都显示出来了,所以我意识到这是一个渲染问题。
事实证明默认值是 WegGL
,我通过添加 SVG
切换到 render_mode='svg'
。
哇啦,一切都解决了。
如果您觉得这有帮助,请点赞。谢谢