Skip to main content

renders pyecharts output as image

Project description

https://api.travis-ci.org/pyecharts/pyecharts-snapshot.svg?branch=master https://dev.azure.com/pyecharts/pyecharts-snapshot/_apis/build/status/pyecharts.pyecharts-snapshot https://codecov.io/gh/pyecharts/pyecharts-snapshot/branch/master/graph/badge.svg

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.

Introduction

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.

Usage

Get png:

$ snapshot render.html

And you will get:

https://raw.githubusercontent.com/pyecharts/pyecharts-snapshot/master/images/demo.png

Get pdf:

$ snapshot render.html pdf

And you will get:

https://raw.githubusercontent.com/pyecharts/pyecharts-snapshot/master/images/demo_in_pdf.png

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]

where:

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.

Coffee

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

Installation

Package installation

You can install it via pip:

$ pip install pyecharts-snapshot
$ pyppeteer-install

or clone it and install it:

$ git clone http://github.com/pyecharts/pyecharts-snapshot.git
$ cd pyecharts-snapshot
$ python setup.py install
$ pyppeteer-install

Test status

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

Constraints

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

Added

  1. use pyppeteer, pythonic puppeteer for rendering pyecharts image

Removed

  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

Added

  1. #33: Support base64 encoding

0.1.9 - 13.11.2018

Added

  1. Support eps

Updated

  1. Loosen the requirement on lml

0.1.8 - 12.09.2018

Fixed

  1. #28: pixel_ratio as a parameter

0.1.7 - 31.05.2018

Fixed

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

0.1.6 - 16.05.2018

Updated

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

0.1.5 - 11.04.2018

Updated

  1. better error verbose when phantomjs fails to generate output

0.1.4 - 26.03.2018

Added

  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

Added

  1. svg support for pyecharts 0.4.0

0.1.2 - 21.12.2017

Updated

  1. #9: delay 1.5 seconds

0.1.1 - 17.12.2017

Updated

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

0.1.0 - 15.12.2017

Updated

  1. support Mac OS Retina display, high resolution screenshots

0.0.11 - 2.11.2017

Updated

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

0.0.10 - 23.10.2017

Updated

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

0.0.9 - 21.10.2017

Updated

  1. #6: show better

0.0.8 - 08.09.2017

Updated

  1. #5: fix

0.0.7 - 26.08.2017

Updated

  1. Save the output of pyecharts to gif file

0.0.6 - 25.08.2017

Updated

  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

Updated

  1. #1: Support

0.0.3 - 19.08.2017

Updated

  1. Remove download image arrow on the output file

0.0.2 - 18.08.2017

Added

  1. Save the output of pyecharts to pdf file

0.0.1 - 17.08.2017

Added

  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 details)

Uploaded Source

Built Distribution

pyecharts_snapshot-0.2.0-py2.py3-none-any.whl (7.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pyecharts-snapshot-0.2.0.tar.gz.

File metadata

  • Download URL: pyecharts-snapshot-0.2.0.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.7

File hashes

Hashes for pyecharts-snapshot-0.2.0.tar.gz
Algorithm Hash digest
SHA256 4c04d49d9910489eb8c62d4e5d61c00adf871c939fbdfb778242c1e4e78852a6
MD5 5a7b9e3ffddd5482091482d862f6102f
BLAKE2b-256 8eb4a65b34019586498a0f111bdef74c5ee5d7d8e5e7708f00fb1d766eabc34f

See more details on using hashes here.

File details

Details for the file pyecharts_snapshot-0.2.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pyecharts_snapshot-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 4d03a1eb27b0a7176c1f4468d2d2811de0023ea462b8de517ecef4c1db116fe6
MD5 efe15f51555ad7abebba0147b2298fff
BLAKE2b-256 85e8f0a14cc92d89d43e52efb48bca5053c24b53e06e93b43579071476ed0cc6

See more details on using hashes here.

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