Skip to main content

Software to (re)produce burning ember diagrams of the style used in IPCC reports.

Project description

The Ember Factory

Objective

The purpose of this software is to (re)produce burning ember diagrams of the style used in IPCC reports. An example is figure 2 from the Summary for Policymakers of the Special Report on a global warming of 1.5°C: SR15 Figure SPM.2. Please note that this software is not a product of the IPCC: the IPCC is not responsible for projects or researches. No figure published by the IPCC to date (05/2020) was made with this software, but the ability of this software to reproduce several figures published by the IPCC was carefully tested.

How to use

This software (hereafter 'the EF') is designed to work as a web application. However, it is relatively easy to run it "locally":

  • The application is publicly available here: https://climrisk.org/emberfactory

  • To run it on your own computer, install the required python packages then on a unix machine you may start with export FLASK_APP=emberweb (for Windows: $env:FLASK_APP = "emberweb") then flask run. More information on this will come soon.

  • To run the app on a server, you need to have a WSGI server such as Gunicorn (not included in the required packages because you do not need it to run the EF locally and you may have another WSGI server).
    If you want a root path such as /emberfactory, the EF is written so that you should set this path in the APPLICATION_ROOT variable within a file called emberfactory.cfg that needs to be located in your /instance folder (this is not entirely standard).

Structure

The Ember Factory is made of two 'almost independent' packages:

  • embermaker contains the code (and default data) needed to draw burning embers. The diagrams are obtained in PDF format.
  • emberweb is the user interface.

The reason why it is not yet 'fully independent' is that emberweb relies on auxiliary functions that are in embermaker/helpers.py

Version numbers

The main version number is increased with every change to any part of The Ember Factory, (emberweb and embermaker, see above). The main version number is in emberweb/init.py Embermaker also has its own version number (in embermaker/init.py), so as to indicate changes that might influence the 'product', ie. burning ember diagrams.

Development history

This software was created by philippe.marbaix -at- uclouvain.be at the end of 2019. The first objective was to produce a figure for a paper that is now under review (05/2020). While I have a long experience of coding in a range of programming languages, this is my first experience with a web application. I made efforts in order to have a structure that can be understood and potentially extended in the future, but I guess that it may be improved. In addition, the coding logic and structure was first designed to be used with mod_python (which is obsolete) and then revised in 2020 to work with Flask. Therefore some aspects of the coding may still follow the logic of this earlier version rather than what would have been done for an application designed for Flask in the first place. The work for this project was done outside of my duties at UCLouvain, which are related to the Plateforme wallonne pour le GIEC, and represent 80% of my work time.

Help is welcome to further improve the application, but I have no experience in collaborative software development so please be patient. All contributions will be recognised :-).

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

EmberFactory-1.1.3-py3-none-any.whl (1.3 MB view details)

Uploaded Python 3

File details

Details for the file EmberFactory-1.1.3-py3-none-any.whl.

File metadata

  • Download URL: EmberFactory-1.1.3-py3-none-any.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.7

File hashes

Hashes for EmberFactory-1.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 16e87f3d68b0ee90a82aab7ac78356060dcbb17d5fa83fe2d8fd21a22587db78
MD5 7522b37f30a0a298aebf65c1bff80ee6
BLAKE2b-256 032412f754d816e3ecb2558ca48181b80e10461b30fe02c7df50315b94281746

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