Skip to main content

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

Project description

EmberMaker

Purpose

EmberMaker is a scientific graphic library aimed at (re)producing "burning ember" diagrams of the style used in IPCC (Intergovernmental Panel on Climate Change) reports. All graphics elements are in vector form, including color gradients (this implies specific drawing code).

EmberMaker was formerly a part of the EmberFactory project: https://pypi.org/project/EmberFactory/. If you need to produce ember diagrams from your data, first consider using the online EmberFactory. This package is intended to meet more specific needs, by drawing embers from your own code.

In addition to 'burning embers', EmberMaker can also draw common x-y plots which share the same vertical axis as a set of embers.

While EmberMaker is a Python package, it is quite easy to use within R, as shown in the last example below.

Installation

pip install embermaker

Only Python >= 3.10 is supported.

Basic usage

Creating embers only needs calling a few functions, as in this basic example:

from embermaker.embergraph import EmberGraph
from embermaker.ember import Ember

# Create ember
be = Ember(name='What this ember is about', haz_valid=[0, 5])

# Add two transitions to this ember
be.trans_create(name='undetectable to moderate', min=0.6, median=1.1, max=1.4, confidence='very high')
be.trans_create(name='moderate to high', min=1.7, median=2.2, max=2.5, confidence='high')

# Create an ember graph (available native image formats are PDF and SVG)
egr = EmberGraph("output_file_name", grformat="PDF")

# Change a parameter (list of parameters: https://climrisk.org/emberfactory/doc/parameters )
egr.gp['haz_axis_top'] = 5.0  # max value on axis 

# Add ember to graph (a list would work as well; more advanced uses define ember groups)
egr.add(be)

# Actually produce the diagram
outfile = egr.draw()

Usage examples

Examples are provided on FramaGit (a GitLab instance)

Access within python (/examples/python):

  • 'create_and_draw_embers.py' is the shorter and simpler. It illustrates a few functions constructing embers from data.
  • 'draw_embers_from_file.py' reads 'traditional' ember Excel sheets and shows how an x-y plot can be added.
  • 'test_error_reporting.py' illustrates a few cases which produce warning or error messages and how to access these.

Access from R (/examples/R):

  • 'create_and_draw_embers.R' illustrates functions constructing embers, within an R script and using data produced in R.

As this is the first "standalone" version, the API functions may be improved in the future, as well as more documented. We are interested in learning how you use this and any difficult you might face, to steer future development - thanks!

Development history

The EmberFactory software was created by philippe.marbaix -at- uclouvain.be at the end of 2019. The first objective was to produce figure 3 of Zommers et al. 2020 (doi.org/10/gg985p).

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

embermaker-2.1.0b1.tar.gz (79.0 kB view details)

Uploaded Source

Built Distribution

embermaker-2.1.0b1-py3-none-any.whl (86.7 kB view details)

Uploaded Python 3

File details

Details for the file embermaker-2.1.0b1.tar.gz.

File metadata

  • Download URL: embermaker-2.1.0b1.tar.gz
  • Upload date:
  • Size: 79.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.8 Darwin/23.5.0

File hashes

Hashes for embermaker-2.1.0b1.tar.gz
Algorithm Hash digest
SHA256 d02b4062b4b15d46af6e7af1b70fedd08c2b17e6c10c802e1ec196c84b059770
MD5 8e2b667c98cbb3eea1bce79aa854e7b1
BLAKE2b-256 80c9215f081eda83e2e7870c9fdf0547bde68f30c90c9f554db87c41d0f4ad88

See more details on using hashes here.

File details

Details for the file embermaker-2.1.0b1-py3-none-any.whl.

File metadata

  • Download URL: embermaker-2.1.0b1-py3-none-any.whl
  • Upload date:
  • Size: 86.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.8 Darwin/23.5.0

File hashes

Hashes for embermaker-2.1.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 6f2a5f6f0edf41e1a907fd3234acc058edddfee4a65d1522d4fded451e319ea1
MD5 4783f596344d5ad731613e4f4efdbbfb
BLAKE2b-256 2ca112fee215315ac9b962a2f1afd10d5ac0dea69f3e22887e1f98587cb7f1bd

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