.. _sphx_glr_examples_plot_stack.py: ========================= Plot Data as a Stack Plot ========================= .. code-block:: python # sphinx_gallery_thumbnail_number = 2 import matplotlib.pyplot as plt import pyam Read in some example data .. code-block:: python fname = 'data.csv' df = pyam.IamDataFrame(fname, encoding='ISO-8859-1') print(df.head()) .. rst-class:: sphx-glr-script-out Out:: model scenario region variable unit year value 9 MESSAGE-GLOBIOM SSP2-26 R5ASIA Emissions|CO2 Mt CO2/yr 2005 10488.011 15 MESSAGE-GLOBIOM SSP2-26 R5LAM Emissions|CO2 Mt CO2/yr 2005 5086.483 12 MESSAGE-GLOBIOM SSP2-26 R5MAF Emissions|CO2 Mt CO2/yr 2005 4474.073 3 MESSAGE-GLOBIOM SSP2-26 R5OECD Emissions|CO2 Mt CO2/yr 2005 14486.522 6 MESSAGE-GLOBIOM SSP2-26 R5REF Emissions|CO2 Mt CO2/yr 2005 2742.073 We generated a simple stacked stack chart as below .. code-block:: python data = df.filter({'variable': 'Emissions|CO2|*', 'level': 0, 'region': 'World'}) data.interpolate(2015) # some values are missing fig, ax = plt.subplots(figsize=(10, 10)) data.stack_plot(ax=ax) fig.subplots_adjust(right=0.55) plt.show() .. image:: /examples/images/sphx_glr_plot_stack_001.png :align: center We don't just have to plot variables, any data or metadata associated with the IamDataFrame can be used. .. code-block:: python data = (df .filter({'variable': 'Emissions|CO2'}) .filter({'region': 'World'}, keep=False) ) fig, ax = plt.subplots(figsize=(10, 10)) data.stack_plot(ax=ax, stack='region', cmap='tab20') plt.show() .. image:: /examples/images/sphx_glr_plot_stack_002.png :align: center **Total running time of the script:** ( 0 minutes 0.266 seconds) .. only :: html .. container:: sphx-glr-footer .. container:: sphx-glr-download :download:`Download Python source code: plot_stack.py ` .. container:: sphx-glr-download :download:`Download Jupyter notebook: plot_stack.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_