1、资源引用
pyecharts 使用的所有静态资源文件存放于 pyecharts-assets 项目中,默认挂载在 https://assets.pyecharts.org/assets/
当需要用到相关资源文件时,默认优先从远程引用资源。这样当无法加载到相关的资源js文件时,图表就无法显示。
2、解决办法
1)Localhost-Server
pyecharts 提供了更改全局 HOST 的快捷方式,下面以开发者启动本地 FILE SERVER 为例,操作如下。
1、获取 pyecharts-assets 项目
$ git clone https://github.com/pyecharts/pyecharts-assets.git
2、启动 HTTP file server
$ cd pyecharts-assets
$ python -m http.server
# Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...
# 默认会在本地 8000 端口启动一个文件服务器
3、配置 pyecharts 全局 HOST
# 只需要在顶部声明 CurrentConfig.ONLINE_HOST 即可
from pyecharts.globals import CurrentConfig
CurrentConfig.ONLINE_HOST = "http://127.0.0.1:8000/assets/"
2)Notebook-Server
pyecharts v1.5.1+ 起开始支持 Notebook 插件作为静态资源服务。
1、获取 pyecharts-assets 项目
$ git clone https://github.com/pyecharts/pyecharts-assets.git
2、安装扩展插件
$ cd pyecharts-assets
# 安装并激活插件
$ jupyter nbextension install assets
$ jupyter nbextension enable assets/main
3、配置 pyecharts 全局 HOST
# 只需要在顶部声明 CurrentConfig.ONLINE_HOST 即可
from pyecharts.globals import CurrentConfig, OnlineHostType
# OnlineHostType.NOTEBOOK_HOST 默认值为 http://localhost:8888/nbextensions/assets/
CurrentConfig.ONLINE_HOST = OnlineHostType.NOTEBOOK_HOST
3)local
下载所需 js 文件到本地,修改资源引用的绝对地址。
from pyecharts.globals import CurrentConfig, OnlineHostType
CurrentConfig.ONLINE_HOST = "E:/Software/pyecharts-assets-master/assets/"
参考资料:
1、https://pyecharts.org/#/zh-cn/assets_host
2、https://blog.csdn.net/blackrosetian/article/details/106519970