An open API service indexing awesome lists of open source software.

https://github.com/jluttine/d3py

Thin Python wrapper for D3.js
https://github.com/jluttine/d3py

Last synced: about 1 month ago
JSON representation

Thin Python wrapper for D3.js

Awesome Lists containing this project

README

        

.. warning::

Currently, the package is just a quick experimental skeleton for personal use, not really usable.

D3Py
====

D3Py is a thin Python wrapper for D3.js. The main goal is to enable users to
easily copy-paste beautiful D3.js visualizations from http://bl.ocks.org and use
them in their Jupyter Notebooks for their own data.

Other features:

- two-way synchronization:
- update graphs based on updates on Python data
- update Python data based on (user) interactions on the graph

- support other JS libraries

Change of plans:

Support general JavaScript plotting libraries. D3.js is often too low level, so
make it possible to use other JS libraries easily. Some of them are built on top
of D3.js and some are not, but that shouldn't matter.

Here's one list: http://thenextweb.com/dd/2015/06/12/20-best-javascript-chart-libraries/

Some highlights:

- Really nice timeseries plotting:
http://dygraphs.com/gallery/
- Nice innovation for timeseries plotting to save vertical space:
https://square.github.io/cubism/
- Basics of several plot types: http://code.shutterstock.com/rickshaw/examples/
- Basics of several plot types: http://c3js.org/examples.html
- Basics of several plot types: http://nvd3.org/examples/index.html
- Graphs: http://js.cytoscape.org/
- Graphs: http://sigmajs.org/
- Miscellaneous plots: http://plottablejs.org/

Installation
------------

Install latest release from PyPI:

.. code:: console

pip install d3py

Install latest development version from GitHub:

.. code:: console

pip install git+https://github.com/jluttine/d3py.git@develop


Usage
-----

Contributing
------------

Contributions are most welcome. You can, for instance, improve the core methods
in order to make using D3.js easier, or provide example graphs as a function in
`plot` module along the Javascript and CSS files under `lib` folder.

License
-------

The GNU GPL v2 applies for the package as a whole. Most of the individual files
are released under the MIT license. However, some Javascript and CSS files of
the example graphs from other people have been released under other FLOSS
licenses. Thus, the package as a whole is released under the GPLv2 license.
Contributions are assumed to be MIT licensed unless otherwise stated.