pyecharts的可视化组件需要联网,否则不能正常使用。
很多主机部署因为安全问题,只能使用内网,这种情况应该怎么办?
离线运行pyecharts需要相关的依赖包和资源库,有两个方法可以下载:
1、第一种方法
在联网环境下载pyecharts依赖包和资源库
# 先安装 pyecharts
$ pip install pyecharts
$ cd ~ && mkidr pyecharts-dep && cd pyecharts-dep
# 将 pyecharts 用到的所有依赖下载到 pyecharts-dep 文件夹
$ pip download pyecharts
# clone pyecharts-assets 项目
$ git clone https://github.com/pyecharts/pyecharts-assets.git
最后将 pyecharts-dep 文件夹打包,传输到需要离线使用 pyecharts 的主机内
依赖包通过requirements.txt安装
资源库放在指定位置,图表初始化时加上如下参数:
init_opts=opts.InitOpts(js_host='../XXX/pyecharts-assets/assets/')
2、第二种方法
利用pyecharts-dep配置服务
# 先安装 pyecharts-dep 中除 pyecharts-X.Y.Z-py2.py3-none-any.whl 的其他包
$ ls | grep -v "^pyecharts*" | xargs pip install
# 安装 pyecharts-X.Y.Z-py2.py3-none-any.whl 包
$ ls | grep "pyecharts*" | xargs pip install
# 启动本地服务
$ cd pyecharts-dep/pyecharts-assets && python -m http.server 8888
# 安装插件
jupyter nbextension install assets
jupyter nbextension enable assets/main
尝试下来第一种方法成功率高,运行也更稳定。