romainsacchi / polyviz

BSD 3-Clause "New" or "Revised" License
11 stars 3 forks source link

polyviz: An interface between brightway2 and D3.js

This is a Python package that provides an interface between the brightway2 LCA framework and the D3.js JavaScript library. It is designed to be used in Jupyter notebooks, and provides interactive visualizations of LCA results.

This interface extends the capabilities of d3blocks, and make it compatible with results generated by brightway2.

polyviz allows the following visualizations to be created from LCA results:

Limitations

Tested only with brightway2 version 2.4.5.

Probably works with version 2.5 too, but not tested.

Installation

Install polyviz from PyPI:

pip install polyviz

and you will need to install a forked version of d3blocks:

pip install git+https://github.com/romainsacchi/d3blocks.git

Usage

Sankey diagrams

from polyviz import sankey
import bw2data

act = bw2data.get_activity(("some db", "some activity"))
method = ("some method", "some method")
sankey(activity=act, method=method)

sankey() returns a filepath to an HTML file that can be opened in a browser.

Alternatively, you can track a specific flow:


from polyviz import sankey
import bw2data

act = bw2data.get_activity(("some db", "some activity"))
flow_type = "kilowatt hour"
sankey(activity=act, flow_type=flow_type)

Other examples are available in the examples notebook.

Support

Do not hesitate to report issues in the Github repository.

Maintainers

Contributing

See contributing.

License

BSD-3-Clause.