Skip to main content

renders pyecharts output as image

Project description

News - 16.04.2019

Since 0.2.0, NO LONGER, phantomjs is required! NO LONGER, it supports python 2.7

BUT, the capability to render pyecharts in a script has been merged into pyecharts 1.0.0. And the dependency on phantomjs has been sprawn as: snapshot-phantomjs .

If you love to use ‘snapshot’ command line, please continue to use this project.


pyecharts-snapshot renders the output of pyecharts/echarts.js as a png, jpeg, gif, eps, svg image, raw base64 encoding or a pdf file at command line.


Get png:

$ snapshot render.html

And you will get:

Get pdf:

$ snapshot render.html pdf

And you will get:

And here the code to generate it

Get svg:

$ snapshot render.html svg

Please be aware that render.html should have configure echarts to do svg rendering. This library, being stupid, does not make canvas rendered image as svg rendered. Here is an example svg file.

Usage details

Command line options:

$ snapshot output.html [png|jpeg|gif|svg|pdf] [delay] [pixel ratio]


delay tells pyecharts-snapshot to take a snapshot after some time measured in seconds. It is needed only when your snapshot is partial because the chart animation takes long than 1.5 second(default). pixel ratio tells pyecharts-snapshot to use a different pixel ratio when generate the image. It defaults to 2.

Programmatical usage is simple:

somechart.render(path='cool_snapshot.png')  # delay=1, pixel_ratio=3) 1 second delay, 3 as pixel ratio

where delay as an optional parameter can be given to specify delay_in_seconds.


Please buy me a coffee if you think this library helped.


Package installation

You can install it via pip:

$ pip install pyecharts-snapshot
$ pyppeteer-install

or clone it and install it:

$ git clone
$ cd pyecharts-snapshot
$ python install
$ pyppeteer-install

Test status

Fully tested on pypy, python 3.5, 3.6, 3.7 and 3.8-dev.


Only one image at a time. No 3D image support

Design Considerations

  1. Ghost.Py: very hard to install on my own. Dropped

Maintenance Instructions

  1. install pyecharts-snapshot

  2. make demo

  3. take screenshots of grid.pdf and snapshot.pdf in examples folder

Contributors in alphabetical order

  1. chengjiandong

  2. chfw Author

Change log

0.2.0 - 17.04.2019


  1. use pyppeteer, pythonic puppeteer for rendering pyecharts image


  1. python 2, 3.5- support

  2. no more phantomjs dependency

  3. programmatic rendering capability is removed. NO longer it is integrated with pyecharts

0.1.10 - 16.12.2018


  1. #33: Support base64 encoding

0.1.9 - 13.11.2018


  1. Support eps


  1. Loosen the requirement on lml

0.1.8 - 12.09.2018


  1. #28: pixel_ratio as a parameter

0.1.7 - 31.05.2018


  1. #23: phantomjs on windows does not like absolute path but file uri formatted ones

0.1.6 - 16.05.2018


  1. use system temp file instead of current working folder for tmp files

0.1.5 - 11.04.2018


  1. better error verbose when phantomjs fails to generate output

0.1.4 - 26.03.2018


  1. Tighter integration with pyecharts 0.4.2. SnapshotEnvironment extends the rendering capability of pyecharts

  2. #16: phantomjs check fails on windows

  3. #14: if the output file name has a path, this library fails over

0.1.3 - 12.03.2018


  1. svg support for pyecharts 0.4.0

0.1.2 - 21.12.2017


  1. #9: delay 1.5 seconds

0.1.1 - 17.12.2017


  1. higher resolution screenshots for all platforms: windows and linux.

0.1.0 - 15.12.2017


  1. support Mac OS Retina display, high resolution screenshots

0.0.11 - 2.11.2017


  1. #7: helpful error message on missing phantomjs.

0.0.10 - 23.10.2017


  1. pyexcel pyexcel#105, remove gease from setup_requires, introduced by 0.0.9.

0.0.9 - 21.10.2017


  1. #6: show better

0.0.8 - 08.09.2017


  1. #5: fix

0.0.7 - 26.08.2017


  1. Save the output of pyecharts to gif file

0.0.6 - 25.08.2017


  1. Allow user to specify a custom delay period in seconds. Default is 0.5s

0.0.5 - 22.08.2017

0.0.4 - 19.08.2017


  1. #1: Support

0.0.3 - 19.08.2017


  1. Remove download image arrow on the output file

0.0.2 - 18.08.2017


  1. Save the output of pyecharts to pdf file

0.0.1 - 17.08.2017


  1. Save the output of pyecharts to png file

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyecharts-snapshot-0.2.0.tar.gz (10.4 kB view hashes)

Uploaded source

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page