Pyecharts输出图片问题

Pyecharts输出图片问题

1.问题描述

用pyecharts输出的日历图结果保存为html,无法导出为png、jpg等格式
在这里插入图片描述

2.解决措施

官方给出三种解决措施,点击查看
前两个我没有用到,本文主要针对官方给的最后一个方法和另外一种折中的方法

2.1安装snapshot-selenium

2.1安装snapshot-pyppeteer

2.2安装 snapshot_phantomjs

pip install snapshot_phantomjs

安装snapshot_phantomjs之前需要先安装phantomjs

phantomjs需要将安装路径加入环境变量中:
X:\phantomjs-2.1.1-windows\bin
X:\phantomjs-2.1.1-windows

打开cmd输入:

phantomjs -v


此时,phantomjs已经成功写入环境变量,最好重启一下。

from pyecharts import options as opts
from pyecharts.charts import Calendar
from snapshot_phantomjs import snapshot
from pyecharts.render import make_snapshot
 
 


begin = datetime.date(2017, 1, 1)
end = datetime.date(2017, 12, 31)
data = [[str(begin + datetime.timedelta(days=i)), file["AQI"][i].max()]
for i in range((end - begin).days + 1)
]

calendar=(
        Calendar()
        .add("", data, calendar_opts=opts.CalendarOpts(range_="2017",pos_left='center'))
        .set_global_opts(
             title_opts=opts.TitleOpts(title="2017年AQI"),
            visualmap_opts=opts.VisualMapOpts(
                 max_=500,
                 min_=5,
                orient="horizontal",
                 is_piecewise=True,
                 pos_top="230px",
                pos_left="100px",
            ),
         )
    )


make_snapshot(snapshot,calendar.render(),"xx.png")

默认情况下,输出的内容会保存在工作路径下。

可能会出现报错,暂时不知道怎么更改;切换成svg输出不报错但是里面没有内容
如果你能解决的话,麻烦在评论区告诉我一下!!!

SVG输出无内容
输出的SVG
可能出现的报错
在这里插入图片描述
可以在输出html文件后,用anaconda切换到对应的工作目录下:

snapshot render.html png

输出成功的图片如下图所示:
在这里插入图片描述

3.另外一种折中的方法

之前不知道pyecharts输出的结果可以转为html,所以直接搜索将html转为JPG的办法

3.1.下载python的imgkit、pdfkit库

pip install imgkit
pip install pdfkit

3.2.下载wkhtmltopdf工具包

点击直达
在这里插入图片描述

对应自己的电脑版本下载,installer下载的是exe文件在这里插入图片描述

直接点击打开,然后一路next,在安装路径下可以找到对应的两个exe文件
在这里插入图片描述

import imgkit
 
path_wkimg = r'D:\wkhtmltopdf\bin\wkhtmltoimage.exe'  # 工具路径
cfg = imgkit.config(wkhtmltoimage=path_wkimg)
# 1、将html文件转为图片
imgkit.from_file("E:\\空气质量预测\\render.html", 'cal.jpg', config=cfg)

输出结果保存在同一目录下
在这里插入图片描述
此时可以发现,这种图片中存在大量的空白部分,可以用ps打开裁剪后去除

参考

1.【Python】Python将HTML转成图片、PDF
2.python连echarts画图并将文件保存为png图片
3.PyEcharts输出保存图片的多种方法

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值