Pyechart在Jupyter Lab下无法正确显示图形的问题
Posted bladestone
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pyechart在Jupyter Lab下无法正确显示图形的问题相关的知识,希望对你有一定的参考价值。
问题
pyechart是echarts在python下的版本,在jupyter-notebook中有时候会无法正确显示图形,该如何处理?
处理办法
## 1 声明notebook版本和配置
from pyecharts.globals import CurrentConfig, NotebookType
CurrentConfig.NOTEBOOK_TYPE = NotebookType.JUPYTER_LAB
import pyecharts.options as opts
from pyecharts.charts import Bar
bar = (
Bar()
.add_xaxis(["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"])
.add_yaxis("商家A", [5, 20, 36, 10, 75, 90])
.add_yaxis("商家B", [15, 6, 45, 20, 35, 66])
.set_global_opts(title_opts=opts.TitleOpts(title="主标题", subtitle="副标题"))
)
### 2 加载javascript
bar.load_javascript()
bar.render_notebook()
示例截图
总结分析
Jupyter Lab 渲染的时候有两点需要注意
在顶部声明 Notebook 类型,必须在引入 pyecharts.charts 等模块前声明
from pyecharts.globals import CurrentConfig, NotebookType
CurrentConfig.NOTEBOOK_TYPE = NotebookType.JUPYTER_LAB
在第一次渲染的时候调用 load_javascript() 会预先加载基本 JavaScript 文件到 Notebook 中。如若后面其他图形渲染不出来,则请开发者尝试再次调用,因为 load_javascript 只会预先加载最基本的 js 引用。而主题、地图等 js 文件需要再次按需加载。
load_javascript() 和 render_notebook() 方法需要在不同的 cell 中调用,这是 Notebook 的内联机制,其实本质上我们是返回了带有 html, javascript 对象的 class。notebook 会自动去调用这些方法。
参考文档
- pyecharts 官方站点
以上是关于Pyechart在Jupyter Lab下无法正确显示图形的问题的主要内容,如果未能解决你的问题,请参考以下文章
如何让 ipywidgets 在 Jupyter Lab 中工作?
尝试使用 .bat 文件在指定浏览器中启动 jupyter lab