Pyechart导出高清图像

Pyechart交互图导出高清图像,so easy~~~ ^ _ ^
1.安装pyecharts_snapshot(导出高清图像)
官网:https://pypi.org/project/pyecharts-snapshot/(有安装和使用说明)
pip install pyecharts_snapshot
pyppeteer-install(提示安装chromium;否则转换的时候也会自动安装,但是速度会很慢),安装进度条为列形式。
2.cmd进入.html所在的文件夹,输入:snapshot 拉钩城市招聘图.html(默认直接生成.png)。注意:转换成其它格式,会损失动态效果。
Pyechart导出高清图像_第1张图片
snapshot output.html [png|jpeg|gif|svg|pdf] [delay] [pixel ratio]
说明:
(1)可以生成png|jpeg|gif|svg|pdf这些格式,后面要加参数是,png不可省略
(2)[delay]:延时生成,以秒为单位,默认为1.5s
(3)[pixel ratio]:生成图像的像素比,默认为2
snapshot 拉钩城市招聘图.html png 1 3
(.pdf为高清图像,可用于论文中)

---------------------------------------------------我-----是-----分-----割-----线---------------------------------------------------

注意!!!以下方法均未成功实验!!!仅供参考借鉴!!!

注意:在代码中,如下形式及其各种变形都是不可行的,都会有警告提醒,而且找不到图片。
make_a_snapshot(‘拉钩城市招聘图.html’, ‘拉钩城市招聘图.pdf’)
其实,方法很简单:somechart.render(path=‘拉钩城市招聘图.png’, delay=1, pixel_ratio=3),直接将render中原来写’拉钩城市招聘图.html’替换即可。delay和pixel_ratio参数可以省略。(虽然生成了图片,但是除了.html以外,其它格式都无法正确打开)
原因:0.2.0 - 17.04.2019的版本,已经不支持编程实现了。而且,snapshot已经不整合在pyechart中了。

方法一

https://blog.csdn.net/u011318077/article/details/90113206
还需要下载与谷歌浏览器对应版本的chromedriver.exe,将其放到项目文件夹下。

# 导入输出图片工具
from pyecharts.render import make_snapshot
# 使用snapshot-selenium 渲染图片
from snapshot_selenium import snapshot
……
# 输出保存为图片
make_snapshot(snapshot, bar.render(), "保存图片.png")

结果:图片可以打开,但是渲染不成功,只显示两条坐标线

方法二

(到这里已经心累,没有再具体操作)
需要安装phantomjs, 安装 Node.js环境,安装 pyecharts-snapshot
具体步骤参考链接:
https://blog.csdn.net/u011412768/article/details/85209532
可以使用funnel.render(path=’./漏斗图01.png’)直接输出图片

方法三

下载phantomjs :https://bitbucket.org/ariya/phantomjs/downloads/(一个不带gui的浏览器,内核是webkit)https://phantomjs.org/download.html,两个网址都可以下载,速度都很慢。(心太累,我还是用命令行直接转换吧。。。)

from pyecharts_snapshot.main import make_a_snapshot
……
make_a_snapshot('test.html', 'test.pdf')

方法四

还是需要下载phantomjs,否则会有错误提示:No phantomjs found in your PATH. Please install it!

from pyecharts.render import make_snapshot
from snapshot_phantomjs import snapshot
……
make_snapshot(snapshot, g.render(), "nodes0.png")

你可能感兴趣的:(数据分析与可视化,python,可视化,经验分享)