{
"cells": [
{
"cell_type": "markdown",
"id": "5b280157-80eb-498c-9b37-2d60257eb3f7",
"metadata": {},
"source": [
"# Data exploration of the Climate TRACE dataset\n",
"\n",
"In this chapter, we look at the dataset and we answer a few questions:\n",
"- which countries are the biggest emitters?\n",
"- what sectors are the most responsible for emissions?\n",
"\n",
"In a second part, we compare two different views on emissions:\n",
"\n",
"- the _source_ view, which looks from a bottom up view at all the sources (factories, mines, farms, ...)\n",
"- the _country_ view, which is a top down approach, and derives many values from aggregate economic activity, for example how many tons of coal were burned to produced annually. This is the official reporting method followed by countries to report their emissions to the United Nations as part of the Paris agreements.\n",
"\n",
"The data has already been prepared from the original Climate TRACE dataset. If you want to understand the preprocessing, read the chapter [Ingestion](./ingestion.ipynb).\n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "098161b5-cbdc-4974-b579-3159cfb107d1",
"metadata": {},
"outputs": [],
"source": [
"%load_ext autoreload\n",
"%autoreload 2"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "b9eff952-a85f-48aa-bfae-f767fb036e5e",
"metadata": {},
"outputs": [],
"source": [
"import logging\n",
"logging.basicConfig(level=logging.INFO)"
]
},
{
"cell_type": "markdown",
"id": "50e077ce-d044-4840-80a8-f38f232d39d8",
"metadata": {},
"source": [
"We import all the libraries that we will use in this notebook:\n",
"- the [Polars](https://pola.rs/) library, a very fast package with a clear interface.\n",
"- the [Plotly Express](https://plotly.com/python/plotly-express/) visualization library\n",
"- the `ctrace` package (included in this repository), that contains tools to read and understand the Climate TRACE data."
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "14b5ed9f-45f7-471f-b654-627501391f32",
"metadata": {},
"outputs": [],
"source": [
"import polars as pl\n",
"import plotly.io\n",
"plotly.io.templates.default = \"plotly_white\"\n",
"import plotly.express as px\n",
"\n",
"from ctrace.constants import * # We import many useful constants\n",
"import ctrace as ct"
]
},
{
"cell_type": "markdown",
"id": "6a5363f2-ed1b-4c04-92c6-0b096520967a",
"metadata": {},
"source": [
"# Country emissions\n",
"\n",
"The country emissions are available through the `read_country_emissions()` function. This function will download by default the latest set of reports (currently the V3, publised in November 2024). If the data has already been downloaded, it will use this copy.\n",
"\n",
"The format being returned is a Polars `DataFrame`. This format will be very familiar to people used to working with Pandas, Spark or R dataframes. The `GAS_LIST` indicates that we want to load all the gases available.\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "c9eea6a9-0f47-45bf-aa06-e156a03250fc",
"metadata": {},
"outputs": [],
"source": [
"cedf = ct.read_country_emissions(GAS_LIST)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "35f7d301-eb09-412d-94a7-696fbd5cb439",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"
shape: (3, 11) iso3_country start_time end_time gas sector subsector emissions_quantity emissions_quantity_units temporal_granularity created_date modified_date enum datetime[ms, UTC] datetime[ms, UTC] enum enum enum f64 cat enum datetime[ms, UTC] datetime[ms, UTC] "ABW" 2015-01-01 00:00:00 UTC 2015-12-31 00:00:00 UTC "co2" "fossil-fuel-operations" "other-fossil-fuel-operations" 0.0 null "annual" null null "ABW" 2015-01-01 00:00:00 UTC 2015-12-31 00:00:00 UTC "co2" "mineral-extraction" "bauxite-mining" 0.0 null "annual" null null "ABW" 2015-01-01 00:00:00 UTC 2015-12-31 00:00:00 UTC "co2" "transportation" "domestic-shipping" 90613.375994 null "annual" null null
"
],
"text/plain": [
"shape: (3, 11)\n",
"┌────────────┬────────────┬────────────┬──────┬───┬────────────┬───────────┬───────────┬───────────┐\n",
"│ iso3_count ┆ start_time ┆ end_time ┆ gas ┆ … ┆ emissions_ ┆ temporal_ ┆ created_d ┆ modified_ │\n",
"│ ry ┆ --- ┆ --- ┆ --- ┆ ┆ quantity_u ┆ granulari ┆ ate ┆ date │\n",
"│ --- ┆ datetime[m ┆ datetime[m ┆ enum ┆ ┆ nits ┆ ty ┆ --- ┆ --- │\n",
"│ enum ┆ s, UTC] ┆ s, UTC] ┆ ┆ ┆ --- ┆ --- ┆ datetime[ ┆ datetime[ │\n",
"│ ┆ ┆ ┆ ┆ ┆ cat ┆ enum ┆ ms, UTC] ┆ ms, UTC] │\n",
"╞════════════╪════════════╪════════════╪══════╪═══╪════════════╪═══════════╪═══════════╪═══════════╡\n",
"│ ABW ┆ 2015-01-01 ┆ 2015-12-31 ┆ co2 ┆ … ┆ null ┆ annual ┆ null ┆ null │\n",
"│ ┆ 00:00:00 ┆ 00:00:00 ┆ ┆ ┆ ┆ ┆ ┆ │\n",
"│ ┆ UTC ┆ UTC ┆ ┆ ┆ ┆ ┆ ┆ │\n",
"│ ABW ┆ 2015-01-01 ┆ 2015-12-31 ┆ co2 ┆ … ┆ null ┆ annual ┆ null ┆ null │\n",
"│ ┆ 00:00:00 ┆ 00:00:00 ┆ ┆ ┆ ┆ ┆ ┆ │\n",
"│ ┆ UTC ┆ UTC ┆ ┆ ┆ ┆ ┆ ┆ │\n",
"│ ABW ┆ 2015-01-01 ┆ 2015-12-31 ┆ co2 ┆ … ┆ null ┆ annual ┆ null ┆ null │\n",
"│ ┆ 00:00:00 ┆ 00:00:00 ┆ ┆ ┆ ┆ ┆ ┆ │\n",
"│ ┆ UTC ┆ UTC ┆ ┆ ┆ ┆ ┆ ┆ │\n",
"└────────────┴────────────┴────────────┴──────┴───┴────────────┴───────────┴───────────┴───────────┘"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cedf.head(3)"
]
},
{
"cell_type": "markdown",
"id": "7a69c86f-3b4f-4439-bca3-366144ff4356",
"metadata": {},
"source": [
"# Understanding the data format\n",
"\n",
"These rows are a mouthful to digest. Here is how the emissions data is structured.\n",
"\n",
"This data is highly structured, which is reflected in the schema itself. This schema has a lot of enumerations (`iso3_country`, `gas`, ...), where only a few values are expected. For example, all the country names are represented by their official [ISO 3166 3-letter country codes](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes). Internally, Polars can assign small integers to represent them all, which consumes less memory and speeds up manipulations. This has a further advantage: since we know the values to expect, we can give them names in the code such as `CH4`, `CO2`, .... We can use all the software tools to find and update references to various gas as we work with it. \n",
"\n",
"```{admonition} TODO\n",
"move all this part in its own notebook, this is about technical details\n",
"```\n"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "37a1e1c6-a92c-4093-bc2e-2a70475adf0d",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Schema([('iso3_country',\n",
" Enum(categories=['ABW', 'AFG', 'AGO', 'AIA', 'ALA', 'ALB', 'AND', 'ARE', 'ARG', 'ARM', 'ASM', 'ATA', 'ATF', 'ATG', 'AUS', 'AUT', 'AZE', 'BDI', 'BEL', 'BEN', 'BES', 'BFA', 'BGD', 'BGR', 'BHR', 'BHS', 'BIH', 'BLM', 'BLR', 'BLZ', 'BMU', 'BOL', 'BRA', 'BRB', 'BRN', 'BTN', 'BVT', 'BWA', 'CAF', 'CAN', 'CCK', 'CHE', 'CHL', 'CHN', 'CIV', 'CMR', 'COD', 'COG', 'COK', 'COL', 'COM', 'CPV', 'CRI', 'CUB', 'CUW', 'CXR', 'CYM', 'CYP', 'CZE', 'DEU', 'DJI', 'DMA', 'DNK', 'DOM', 'DZA', 'ECU', 'EGY', 'ERI', 'ESH', 'ESP', 'EST', 'ETH', 'FIN', 'FJI', 'FLK', 'FRA', 'FRO', 'FSM', 'GAB', 'GBR', 'GEO', 'GGY', 'GHA', 'GIB', 'GIN', 'GLP', 'GMB', 'GNB', 'GNQ', 'GRC', 'GRD', 'GRL', 'GTM', 'GUF', 'GUM', 'GUY', 'HKG', 'HMD', 'HND', 'HRV', 'HTI', 'HUN', 'IDN', 'IMN', 'IND', 'IOT', 'IRL', 'IRN', 'IRQ', 'ISL', 'ISR', 'ITA', 'JAM', 'JEY', 'JOR', 'JPN', 'KAZ', 'KEN', 'KGZ', 'KHM', 'KIR', 'KNA', 'KOR', 'KWT', 'LAO', 'LBN', 'LBR', 'LBY', 'LCA', 'LIE', 'LKA', 'LSO', 'LTU', 'LUX', 'LVA', 'MAC', 'MAF', 'MAR', 'MCO', 'MDA', 'MDG', 'MDV', 'MEX', 'MHL', 'MKD', 'MLI', 'MLT', 'MMR', 'MNE', 'MNG', 'MNP', 'MOZ', 'MRT', 'MSR', 'MTQ', 'MUS', 'MWI', 'MYS', 'MYT', 'NAM', 'NCL', 'NER', 'NFK', 'NGA', 'NIC', 'NIU', 'NLD', 'NOR', 'NPL', 'NRU', 'NZL', 'OMN', 'PAK', 'PAN', 'PCN', 'PER', 'PHL', 'PLW', 'PNG', 'POL', 'PRI', 'PRK', 'PRT', 'PRY', 'PSE', 'PYF', 'QAT', 'REU', 'ROU', 'RUS', 'RWA', 'SAU', 'SDN', 'SEN', 'SGP', 'SGS', 'SHN', 'SJM', 'SLB', 'SLE', 'SLV', 'SMR', 'SOM', 'SPM', 'SRB', 'SSD', 'STP', 'SUR', 'SVK', 'SVN', 'SWE', 'SWZ', 'SXM', 'SYC', 'SYR', 'TCA', 'TCD', 'TGO', 'THA', 'TJK', 'TKL', 'TKM', 'TLS', 'TON', 'TTO', 'TUN', 'TUR', 'TUV', 'TWN', 'TZA', 'UGA', 'UKR', 'UMI', 'URY', 'USA', 'UZB', 'VAT', 'VCT', 'VEN', 'VGB', 'VIR', 'VNM', 'VUT', 'WLF', 'WSM', 'XKX', 'YEM', 'ZAF', 'ZMB', 'ZWE', 'ZNC', 'UNK', 'SCG', 'XAD'])),\n",
" ('start_time', Datetime(time_unit='ms', time_zone='UTC')),\n",
" ('end_time', Datetime(time_unit='ms', time_zone='UTC')),\n",
" ('gas', Enum(categories=['co2', 'ch4', 'n2o', 'co2e_100yr'])),\n",
" ('sector',\n",
" Enum(categories=['agriculture', 'buildings', 'fluorinated-gases', 'forestry-and-land-use', 'fossil-fuel-operations', 'manufacturing', 'mineral-extraction', 'power', 'transportation', 'waste'])),\n",
" ('subsector',\n",
" Enum(categories=['aluminum', 'bauxite-mining', 'biological-treatment-of-solid-waste-and-biogenic', 'cement', 'chemicals', 'coal-mining', 'copper-mining', 'crop-residues', 'cropland-fires', 'domestic-aviation', 'domestic-shipping', 'domestic-shipping-ship', 'domestic-wastewater-treatment-and-discharge', 'electricity-generation', 'enteric-fermentation-cattle-operation', 'enteric-fermentation-cattle-pasture', 'enteric-fermentation-other', 'fluorinated-gases', 'food-beverage-tobacco', 'forest-land-clearing', 'forest-land-degradation', 'forest-land-fires', 'glass', 'heat-plants', 'incineration-and-open-burning-of-waste', 'industrial-wastewater-treatment-and-discharge', 'international-aviation', 'international-shipping', 'international-shipping-ship', 'iron-and-steel', 'iron-mining', 'lime', 'manure-applied-to-soils', 'manure-left-on-pasture-cattle', 'manure-management-cattle-operation', 'manure-management-other', 'net-forest-land', 'net-shrubgrass', 'net-wetland', 'non-residential-onsite-fuel-usage', 'oil-and-gas-production', 'oil-and-gas-refining', 'oil-and-gas-transport', 'other-agricultural-soil-emissions', 'other-chemicals', 'other-energy-use', 'other-fossil-fuel-operations', 'other-manufacturing', 'other-metals', 'other-mining-quarrying', 'other-onsite-fuel-usage', 'other-transport', 'petrochemical-steam-cracking', 'pulp-and-paper', 'railways', 'removals', 'residential-onsite-fuel-usage', 'rice-cultivation', 'road-transportation', 'road-transportation-road-segment', 'rock-quarrying', 'sand-quarrying', 'shrubgrass-fires', 'soil-organic-carbon', 'solid-fuel-transformation', 'solid-waste-disposal', 'synthetic-fertilizer-application', 'textiles-leather-apparel', 'water-reservoirs', 'wetland-fires', 'wood-and-wood-products'])),\n",
" ('emissions_quantity', Float64),\n",
" ('emissions_quantity_units', Categorical(ordering='physical')),\n",
" ('temporal_granularity',\n",
" Enum(categories=['annual', 'other', 'month', 'week', 'day', 'hour'])),\n",
" ('created_date', Datetime(time_unit='ms', time_zone='UTC')),\n",
" ('modified_date', Datetime(time_unit='ms', time_zone='UTC'))])"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cedf.schema"
]
},
{
"cell_type": "markdown",
"id": "4aef5438-e8b1-41d5-bfa0-62307d4f9403",
"metadata": {},
"source": [
"Another trick is to define all the Dataframe _columns_ that we are going to manipulate.\n",
"For example, there is a column called `gas` that refers to all the gas being tabulated.\n",
"Coming from the Pandas world, it would be normal to refer to this column:\n",
"\n",
"```py\n",
"cedf_pdf[cedf_pdf[\"gas\"]==\"ch4\"]\n",
"```\n",
"\n",
"Polars offers a more succint syntax by considering an _abstract column_, for example for the gas:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "db31255d-3854-49b9-8490-2ea461423fef",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"col(\"gas\")"
],
"text/plain": [
""
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pl.col(\"gas\")"
]
},
{
"cell_type": "markdown",
"id": "8d585d85-0c0b-45f1-b66e-6abc4a30be5d",
"metadata": {},
"source": [
"That `col(\"gas\")` refers to any dataframe column called `gas`. The `select` method operates on a polars dataframe takes such columns as instructions to select specific columns."
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "6812f202-9759-42e2-b99a-9c7e43468ae6",
"metadata": {},
"outputs": [],
"source": [
"cedf.select(pl.col(\"gas\"));"
]
},
{
"cell_type": "markdown",
"id": "30478d30-6104-48ec-a8fd-41318eb7a2bd",
"metadata": {},
"source": [
"The `ctrace` library predefines all the columns defined in the Climate TRACE datasets, all prefixed by the `c_` prefix:"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "78e09c07-6703-49d5-9dd2-d81e0662e6d4",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"col(\"gas\")"
],
"text/plain": [
""
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ct.constants.c_gas"
]
},
{
"cell_type": "markdown",
"id": "86de4661-d05a-4a26-9eb8-d875498f45e4",
"metadata": {},
"source": [
"This reduces the chance of making a typo, allows us to use the autocompletion features of editors, and it will catch any mistake before executing the code. Selecting all the data related to CO2 is simply:"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "074dcb9e-af56-4afa-92f1-5c93b9c95c76",
"metadata": {},
"outputs": [],
"source": [
"# cedf.filter(c_gas == CO2);"
]
},
{
"cell_type": "markdown",
"id": "bab455e0-32a9-4a22-ac4c-e0485cdc28d6",
"metadata": {},
"source": [
"**Using a different data processing framework**\n",
"\n",
"This notebook is using Polars. Are you more familiar with other frameworks such as `pandas`, `PySpark`, `Modin`, `DuckDB`, R's dataframes? No problem. Polars can convert directly to most of these other representations. Here is an example for pandas below. You can also directly point to the underlying Parquet representation on the [HuggingFace Hub of the project](https://huggingface.co/datasets/tjhunter/climate-trace/tree/main)."
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "1eceedda-3818-43dd-82b9-d8bedfdddf47",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" iso3_country \n",
" start_time \n",
" end_time \n",
" gas \n",
" sector \n",
" subsector \n",
" emissions_quantity \n",
" emissions_quantity_units \n",
" temporal_granularity \n",
" created_date \n",
" modified_date \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" ABW \n",
" 2015-01-01 00:00:00+00:00 \n",
" 2015-12-31 00:00:00+00:00 \n",
" co2 \n",
" fossil-fuel-operations \n",
" other-fossil-fuel-operations \n",
" 0.000000 \n",
" NaN \n",
" annual \n",
" NaT \n",
" NaT \n",
" \n",
" \n",
" 1 \n",
" ABW \n",
" 2015-01-01 00:00:00+00:00 \n",
" 2015-12-31 00:00:00+00:00 \n",
" co2 \n",
" mineral-extraction \n",
" bauxite-mining \n",
" 0.000000 \n",
" NaN \n",
" annual \n",
" NaT \n",
" NaT \n",
" \n",
" \n",
" 2 \n",
" ABW \n",
" 2015-01-01 00:00:00+00:00 \n",
" 2015-12-31 00:00:00+00:00 \n",
" co2 \n",
" transportation \n",
" domestic-shipping \n",
" 90613.375994 \n",
" NaN \n",
" annual \n",
" NaT \n",
" NaT \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" iso3_country start_time end_time gas \\\n",
"0 ABW 2015-01-01 00:00:00+00:00 2015-12-31 00:00:00+00:00 co2 \n",
"1 ABW 2015-01-01 00:00:00+00:00 2015-12-31 00:00:00+00:00 co2 \n",
"2 ABW 2015-01-01 00:00:00+00:00 2015-12-31 00:00:00+00:00 co2 \n",
"\n",
" sector subsector emissions_quantity \\\n",
"0 fossil-fuel-operations other-fossil-fuel-operations 0.000000 \n",
"1 mineral-extraction bauxite-mining 0.000000 \n",
"2 transportation domestic-shipping 90613.375994 \n",
"\n",
" emissions_quantity_units temporal_granularity created_date modified_date \n",
"0 NaN annual NaT NaT \n",
"1 NaN annual NaT NaT \n",
"2 NaN annual NaT NaT "
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Use pandas instead:\n",
"cedf_pandas = ct.read_country_emissions(GAS_LIST).to_pandas()\n",
"cedf_pandas.head(3)"
]
},
{
"cell_type": "markdown",
"id": "4e061de9-2bea-4d69-9c49-3cf55f0997fd",
"metadata": {},
"source": [
"# Country checks\n",
"\n",
"In this section, we identify the biggest emitters and sort out a few unexpected insights.\n",
"\n",
"We focus this analysis on the year *2023* and on the aggregated emissions for carbon dioxyde (CO2). You can look at how the results change when you focus on another specific gas (`co2`, `nh4`, ...) or the global warming potentials (`co2e_100yr`)"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "b4d4b73d-59cb-43f4-ad37-f68c8746be4b",
"metadata": {},
"outputs": [],
"source": [
"gas = CO2 #gas = CO2E_100YR\n",
"year = 2023\n",
"\n",
"cedf_gy = cedf.filter(c_gas == gas).filter(c_start_time.dt.year()==year)"
]
},
{
"cell_type": "markdown",
"id": "abca0337-d101-4f4e-bea0-e1b8d316411c",
"metadata": {},
"source": [
"First question: how much do we emit? About 50GT of CO2 (gigatonnes of CO2). Note the first wrinkle already: this takes into account the absorption by the vegetation. If we did not take into action the beneficial actions of our friends the trees, our emissions would be already higher. Trees will come back as a complicated topic.\n",
"\n",
"Here are the net emissions, taking into account all the contribution of the forestry and land use sector: 55GT of CO2 equivalent"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "fd631d03-f831-4e3e-96b9-9f46104d09e0",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
shape: (1, 1) emissions_quantity f64 5.0609e10
"
],
"text/plain": [
"shape: (1, 1)\n",
"┌────────────────────┐\n",
"│ emissions_quantity │\n",
"│ --- │\n",
"│ f64 │\n",
"╞════════════════════╡\n",
"│ 5.0609e10 │\n",
"└────────────────────┘"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cedf_gy.select(c_emissions_quantity.sum())"
]
},
{
"cell_type": "markdown",
"id": "4d54729d-db9a-429e-94d5-eef8bff2753e",
"metadata": {},
"source": [
"Looking at the increase by year, we see that the emissions of CO2 are still increasing."
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "27331014-2f44-4e11-a77a-48dbe7c3f488",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
" \n",
" "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "gas=co2e_100yr start_time=%{x} emissions_quantity=%{y} ",
"legendgroup": "co2e_100yr",
"line": {
"color": "#636efa",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "co2e_100yr",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
2015,
2016,
2017,
2018,
2019,
2020,
2021,
2022,
2023,
2024
],
"xaxis": "x",
"y": [
76909676741.27464,
77324685168.91852,
78919080767.23872,
78349352454.73698,
78419788021.7663,
79986816819.51863,
80591045843.217,
77532094808.15987,
81589947620.20726,
81869185652.92677
],
"yaxis": "y"
},
{
"hovertemplate": "gas=ch4 start_time=%{x} emissions_quantity=%{y} ",
"legendgroup": "ch4",
"line": {
"color": "#EF553B",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "ch4",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
2015,
2016,
2017,
2018,
2019,
2020,
2021,
2022,
2023,
2024
],
"xaxis": "x",
"y": [
361929149.96128917,
366406643.55802816,
373677640.92013764,
374516361.4841081,
378901906.33765,
376181548.14689404,
387958866.3325299,
392730729.0765844,
394972253.6723687,
395612125.3896557
],
"yaxis": "y"
},
{
"hovertemplate": "gas=n2o start_time=%{x} emissions_quantity=%{y} ",
"legendgroup": "n2o",
"line": {
"color": "#00cc96",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "n2o",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
2015,
2016,
2017,
2018,
2019,
2020,
2021,
2022,
2023,
2024
],
"xaxis": "x",
"y": [
8779050.899786064,
8871984.81142264,
9022645.633068712,
9012557.647310508,
9077712.656795321,
9252391.866696099,
9462030.000830622,
9348923.252506254,
9394896.090902096,
9378365.062176198
],
"yaxis": "y"
},
{
"hovertemplate": "gas=co2 start_time=%{x} emissions_quantity=%{y} ",
"legendgroup": "co2",
"line": {
"color": "#ab63fa",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "co2",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
2015,
2016,
2017,
2018,
2019,
2020,
2021,
2022,
2023,
2024
],
"xaxis": "x",
"y": [
63226096091.19733,
63443855976.00208,
64725773804.456566,
64067586954.64454,
63943771297.89296,
65479318052.18504,
65656785701.46795,
62499744882.61765,
66481024334.72974,
66748381581.61062
],
"yaxis": "y"
}
],
"layout": {
"legend": {
"title": {
"text": "gas"
},
"tracegroupgap": 0
},
"margin": {
"t": 60
},
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "white",
"showlakes": true,
"showland": true,
"subunitcolor": "#C8D4E3"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "white",
"polar": {
"angularaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
},
"bgcolor": "white",
"radialaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"yaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"zaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"baxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"bgcolor": "white",
"caxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
}
}
},
"xaxis": {
"anchor": "y",
"domain": [
0,
1
],
"title": {
"text": "start_time"
}
},
"yaxis": {
"anchor": "x",
"domain": [
0,
1
],
"title": {
"text": "emissions_quantity"
}
}
}
},
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"px.line(\n",
" cedf\n",
" .filter(c_emissions_quantity > 0)\n",
" .group_by(c_start_time.dt.year(), c_gas)\n",
" .agg(c_emissions_quantity.sum())\n",
" .sort(by=c_start_time),\n",
" x=\"start_time\", y=\"emissions_quantity\",\n",
" color=\"gas\")"
]
},
{
"cell_type": "markdown",
"id": "adf9643d-7b75-4085-b102-04a82111bcfe",
"metadata": {},
"source": [
"Most reports do not account for the forestry and land use, because it is very hard to measure and because there are still some debates on what exactly to report in that category. Excluding this category, we get to a amount of 46GT CO2 equivalent, which is what Climate TRACE reports on its website:"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "16d7a6ea-0861-49fb-901b-5710c220600d",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
shape: (1, 1) emissions_quantity f64 4.6174e10
"
],
"text/plain": [
"shape: (1, 1)\n",
"┌────────────────────┐\n",
"│ emissions_quantity │\n",
"│ --- │\n",
"│ f64 │\n",
"╞════════════════════╡\n",
"│ 4.6174e10 │\n",
"└────────────────────┘"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(cedf_gy\n",
" .filter(c_sector != FORESTRY_AND_LAND_USE)\n",
" .select(c_emissions_quantity.sum()))"
]
},
{
"cell_type": "markdown",
"id": "2360534c-4c18-4c78-bbb3-8fcacdae24dc",
"metadata": {},
"source": [
"For now, we will still include forestry and land use. You will see how much this can skew the figures and why it is at the center of many discussions.\n",
"\n",
"And when splitting between sinks and sources"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "a95128c4-9d9d-4fc1-ba03-c6aa8c2b5e45",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
shape: (2, 2) is_source emissions_quantity bool f64 true 6.6481e10 false -1.5872e10
"
],
"text/plain": [
"shape: (2, 2)\n",
"┌───────────┬────────────────────┐\n",
"│ is_source ┆ emissions_quantity │\n",
"│ --- ┆ --- │\n",
"│ bool ┆ f64 │\n",
"╞═══════════╪════════════════════╡\n",
"│ true ┆ 6.6481e10 │\n",
"│ false ┆ -1.5872e10 │\n",
"└───────────┴────────────────────┘"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(\n",
" cedf_gy\n",
" .select([c_emissions_quantity])\n",
" .with_columns((c_emissions_quantity > 0).alias(\"is_source\"))\n",
" .group_by(\"is_source\")\n",
" .agg(c_emissions_quantity.sum())\n",
" .drop_nulls()\n",
")\n"
]
},
{
"cell_type": "markdown",
"id": "147a09d5-eba9-4dfd-a848-a3ad5f938ce2",
"metadata": {},
"source": [
"Look at the top emitters for all the emissions sources. The usual suspects\n",
"come at the top (China, USA, Russia). However, it is very important to\n",
"keep the orders of magnitude in mind: China has more emissions than the next 3 countries (USA, Russia, India) _combined_."
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "36f1d59a-807c-4758-be98-9de812cfa2df",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"alignmentgroup": "True",
"hovertemplate": "iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "",
"offsetgroup": "",
"orientation": "v",
"showlegend": false,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"RUS",
"IND",
"BRA",
"AUS",
"CAN",
"COD",
"IDN",
"AGO",
"JPN",
"IRN",
"MEX",
"SAU",
"DEU",
"KOR",
"ZAF",
"MOZ",
"ZMB",
"BOL"
],
"xaxis": "x",
"y": [
14562136352.971132,
6292588801.389693,
3651821585.216888,
3024480584.201423,
2907731776.957946,
2581928240.6659784,
2253630394.5634236,
1660746253.6942596,
1494261450.694028,
1318713861.570348,
1277855724.7064266,
1043400905.8056568,
945369962.0492785,
804346734.3215549,
747184958.8196052,
742446019.9561703,
669661943.1591144,
665952179.4704338,
631087350.8785418,
581189307.4113564
],
"yaxis": "y"
}
],
"layout": {
"barmode": "relative",
"legend": {
"tracegroupgap": 0
},
"margin": {
"t": 60
},
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "white",
"showlakes": true,
"showland": true,
"subunitcolor": "#C8D4E3"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "white",
"polar": {
"angularaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
},
"bgcolor": "white",
"radialaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"yaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"zaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"baxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"bgcolor": "white",
"caxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
}
}
},
"xaxis": {
"anchor": "y",
"domain": [
0,
1
],
"title": {
"text": "iso3_country"
}
},
"yaxis": {
"anchor": "x",
"domain": [
0,
1
],
"title": {
"text": "emissions_quantity"
}
}
}
},
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"px.bar(cedf_gy\n",
" .filter(c_emissions_quantity > 0)\n",
" .group_by(c_iso3_country)\n",
" .agg(c_emissions_quantity.sum())\n",
" .sort([c_emissions_quantity], descending=True)\n",
" .head(20)\n",
",x=ISO3_COUNTRY, y=EMISSIONS_QUANTITY,log_y=False)\n"
]
},
{
"cell_type": "markdown",
"id": "d7b1770b-047a-42de-9047-920d0234af40",
"metadata": {},
"source": [
"Looking at each sector gives quickly a nuanced sector and shows the difference\n",
"between the various countries.\n",
"\n",
"- the Chinese electricity sector emits more than Western Europe combined. This is not to say that Europeans should not make efforts - they should!. But these efforts can come from many ways, such as incentivizing China to reduce the role of coal in its domestic supply of electricity.\n",
"\n",
"- the emissions from the oil and gas sector in Russia is bigger than all the emissions of Germany. These emissions are typically quick wins (fixing leaks on old pipes).\n",
"\n",
"- Zimbabwe and Mozambique have as much gross emissions together as Japan! Clearing forested areas are very bad for the climate and have only short-term economic benefits. Finding fairer ways to preserve natural resources would also go a long way towards helping developing countries achieve their goals.\n",
"\n",
"- France is about twice as big as Russia looking at the economy (GDP), yet it contributes much less. This view emphasizes _direct_ emissions (where gases are emitted), not the _indirect_ emissions from consumption.\n",
"\n",
"```{admonition} CTODO\n",
":name: sec-emissions2\n",
"Check these conclusions with experts\n",
"```\n"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "5bb687c7-a8d0-400f-8c26-527c0208548c",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"alignmentgroup": "True",
"hovertemplate": "subsector=electricity-generation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "electricity-generation",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "electricity-generation",
"offsetgroup": "electricity-generation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
5130179100,
1472846213.43,
1316867980,
615171560,
27669264,
26620963,
1477939
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=iron-and-steel iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "iron-and-steel",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "iron-and-steel",
"offsetgroup": "iron-and-steel",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"RUS",
"USA",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
2241391578,
162245000.1,
124741553.1,
78458926.40724811,
23448385.988658093,
13301230.660038255,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=road-transportation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "road-transportation",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "road-transportation",
"offsetgroup": "road-transportation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"RUS",
"IND",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
1450411029.6736217,
639698603.924263,
257897067.585432,
173921958.84801623,
140846482.199116,
18761972.87493591,
16485870.419035198
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=cement iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "cement",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "cement",
"offsetgroup": "cement",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"USA",
"RUS",
"FRA",
"MOZ",
"NLD"
],
"xaxis": "x",
"y": [
1150200000,
205200000,
49464000,
33876316.005642265,
11663067.550853726,
1511999.9999855957,
1349999.9939565274
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-energy-use iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-energy-use",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "other-energy-use",
"offsetgroup": "other-energy-use",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"RUS",
"USA",
"FRA",
"NLD",
"MOZ",
"IND"
],
"xaxis": "x",
"y": [
1047371989.0550324,
244420866.5954353,
35551938.52300537,
20425444.88054814,
9450207.568846872,
341750.66225524055,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=residential-onsite-fuel-usage iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "residential-onsite-fuel-usage",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "residential-onsite-fuel-usage",
"offsetgroup": "residential-onsite-fuel-usage",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
598041254.4188098,
467914281.8489097,
206730918.31265983,
182980060.42197004,
58699723.89,
17179384.661999997,
154060.31160000002
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=forest-land-clearing iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "forest-land-clearing",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "forest-land-clearing",
"offsetgroup": "forest-land-clearing",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"USA",
"CHN",
"IND",
"MOZ",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
564644278.9373727,
465927121.56109744,
243055421.19341505,
52793647.8468039,
47406322.42346986,
27630698.390768114,
469369.1881638029
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-manufacturing iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-manufacturing",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "other-manufacturing",
"offsetgroup": "other-manufacturing",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"USA",
"RUS",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
552236798.9318964,
152258544.61443907,
116006826.863333,
40690301.80256175,
9179833.151450835,
2910099.890914369,
84243.82331209721
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=oil-and-gas-transport iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "oil-and-gas-transport",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "oil-and-gas-transport",
"offsetgroup": "oil-and-gas-transport",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"USA",
"CHN",
"IND",
"NLD",
"MOZ",
"FRA"
],
"xaxis": "x",
"y": [
457050236.93810594,
256751054.7619469,
42550435.83861954,
13079242.96035158,
1760603.9528557225,
1701185.2427280454,
125725.09714003836
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=forest-land-fires iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "forest-land-fires",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "forest-land-fires",
"offsetgroup": "forest-land-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"MOZ",
"RUS",
"USA",
"IND",
"CHN",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
418347288.6637572,
203896705.0791128,
70220608.1644276,
44897165.91498696,
11020036.061934132,
635971.4421929999,
131.43946
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=oil-and-gas-production iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "oil-and-gas-production",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "oil-and-gas-production",
"offsetgroup": "oil-and-gas-production",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"RUS",
"CHN",
"IND",
"NLD",
"MOZ",
"FRA"
],
"xaxis": "x",
"y": [
373095048.8292682,
203388363.82717103,
115452130.5002792,
10761171.34683312,
3782668.13009727,
508785.0753883584,
138780.2441705971
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=lime iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "lime",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "lime",
"offsetgroup": "lime",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"FRA",
"MOZ",
"NLD"
],
"xaxis": "x",
"y": [
365302850.5011087,
31108794.001598097,
18189298.70885492,
9078736.614852596,
5103399.982146878,
7948.310867236949,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=solid-fuel-transformation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "solid-fuel-transformation",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "solid-fuel-transformation",
"offsetgroup": "solid-fuel-transformation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"RUS",
"USA",
"FRA",
"NLD",
"MOZ",
"IND"
],
"xaxis": "x",
"y": [
328467505.61718154,
40155052.80727279,
5447069.246841477,
1353156.9566977553,
326026.68750905344,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-chemicals iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-chemicals",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "other-chemicals",
"offsetgroup": "other-chemicals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"NLD",
"FRA",
"MOZ"
],
"xaxis": "x",
"y": [
289984911.8624015,
171892061.09609398,
26186430.446491785,
15005301.335736131,
10818662.511702225,
8420636.81534227,
315.8842042356619
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=chemicals iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "chemicals",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "chemicals",
"offsetgroup": "chemicals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"RUS",
"USA",
"IND",
"NLD",
"FRA",
"MOZ"
],
"xaxis": "x",
"y": [
288283025.0264882,
53254045.166,
39375317.52,
35963696.531,
6931724.142000001,
5437766.322000001,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=aluminum iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "aluminum",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "aluminum",
"offsetgroup": "aluminum",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"RUS",
"USA",
"MOZ",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
241111583.59182125,
18039567.94191592,
12560164.562790353,
3517039.76037724,
2041320.195449316,
1510528.4806916155,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=cropland-fires iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "cropland-fires",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "cropland-fires",
"offsetgroup": "cropland-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"IND",
"CHN",
"RUS",
"USA",
"MOZ",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
218862170.016,
218796009.531,
27131027.955876183,
5326873.241000001,
1810414.6799319456,
434517.3720851696,
378.5174696718835
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=oil-and-gas-refining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "oil-and-gas-refining",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "oil-and-gas-refining",
"offsetgroup": "oil-and-gas-refining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"IND",
"RUS",
"NLD",
"FRA",
"MOZ"
],
"xaxis": "x",
"y": [
186289729.3941164,
180659311.941057,
69784342.6329834,
64022891.83643082,
15194208.37312268,
11627392.964323305,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=net-forest-land iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "net-forest-land",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "net-forest-land",
"offsetgroup": "net-forest-land",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"USA",
"IND",
"CHN",
"MOZ",
"NLD",
"FRA"
],
"xaxis": "x",
"y": [
157020884.13821676,
117684436.41615193,
97574705.08611505,
77834610.07558033,
74427942.80399993,
-2138033.4621750014,
-22643458.92000001
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=net-shrubgrass iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "net-shrubgrass",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "net-shrubgrass",
"offsetgroup": "net-shrubgrass",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"RUS",
"IND",
"NLD",
"MOZ",
"FRA"
],
"xaxis": "x",
"y": [
141926636.93460009,
138075975.95694998,
59618012.39106039,
-544581.9912700005,
-1052343.8772099991,
-3692790.998000007,
-21878487.9511
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=domestic-aviation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "domestic-aviation",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "domestic-aviation",
"offsetgroup": "domestic-aviation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"IND",
"RUS",
"FRA",
"MOZ",
"NLD"
],
"xaxis": "x",
"y": [
123972219.1839114,
87672207.02527396,
12235301.748651557,
9524917.785966236,
1635860.3399332685,
88035.08992988378,
698.707656074748
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=non-residential-onsite-fuel-usage iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "non-residential-onsite-fuel-usage",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "non-residential-onsite-fuel-usage",
"offsetgroup": "non-residential-onsite-fuel-usage",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"RUS",
"FRA",
"IND",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
119267250.262,
51428539.53903,
40366603.794,
12688825.02,
9247055.22316,
5313460.944,
1929.70767
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=shrubgrass-fires iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "shrubgrass-fires",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "shrubgrass-fires",
"offsetgroup": "shrubgrass-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"MOZ",
"RUS",
"USA",
"CHN",
"IND",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
92469501.36193582,
29828836.7633069,
9273490.522821696,
3438342.5499059176,
3421280.688642701,
82023.77403457194,
131.93791999999996
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=domestic-shipping iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "domestic-shipping",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "domestic-shipping",
"offsetgroup": "domestic-shipping",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"RUS",
"NLD",
"FRA",
"IND",
"MOZ"
],
"xaxis": "x",
"y": [
81553551.21528219,
32868599.453703005,
8791445.046162901,
7781131.9693314,
6334512.108903301,
6021659.801324401,
411090.8342074
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=international-aviation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "international-aviation",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "international-aviation",
"offsetgroup": "international-aviation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"FRA",
"IND",
"NLD",
"RUS",
"MOZ"
],
"xaxis": "x",
"y": [
72459845.85572633,
21033793.357543588,
17054714.722831514,
11521673.997214504,
9892755.66248231,
4597109.323549403,
127302.55337711728
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=petrochemical-steam-cracking iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "petrochemical-steam-cracking",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "petrochemical-steam-cracking",
"offsetgroup": "petrochemical-steam-cracking",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"NLD",
"FRA",
"MOZ"
],
"xaxis": "x",
"y": [
69604508.55999999,
46142379.25369998,
8759724.072,
4728405.263359999,
4661032.177,
3076699.3221999984,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-onsite-fuel-usage iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-onsite-fuel-usage",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "other-onsite-fuel-usage",
"offsetgroup": "other-onsite-fuel-usage",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"RUS",
"USA",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
63661942.01366195,
38446653.196893305,
5819140.705180859,
1551041.957653126,
1546676.4055466766,
205039.33549496063,
41585.528703657874
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-agricultural-soil-emissions iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-agricultural-soil-emissions",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "other-agricultural-soil-emissions",
"offsetgroup": "other-agricultural-soil-emissions",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"USA",
"IND",
"CHN",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
59731046.9563975,
57222780.94594196,
37537055.60977952,
17599373.663152408,
7854296.240512339,
54125.89274032853,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-transport iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-transport",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "other-transport",
"offsetgroup": "other-transport",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"USA",
"CHN",
"IND",
"MOZ",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
58885297.42414546,
58864696.140686005,
6607542.407321996,
978748.323562402,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=coal-mining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "coal-mining",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "coal-mining",
"offsetgroup": "coal-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"USA",
"RUS",
"MOZ",
"NLD",
"FRA"
],
"xaxis": "x",
"y": [
57492634.78782895,
17597293.101243928,
9268681.255,
8504305.703469232,
244641.2500000001,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=food-beverage-tobacco iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "food-beverage-tobacco",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "food-beverage-tobacco",
"offsetgroup": "food-beverage-tobacco",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"FRA",
"RUS",
"NLD",
"IND",
"MOZ"
],
"xaxis": "x",
"y": [
57121965.83076,
48158026.13735726,
11147926.818110945,
5310925.223198713,
3120608.927553093,
24349.565230425196,
15583.620742292596
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=international-shipping iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "international-shipping",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "international-shipping",
"offsetgroup": "international-shipping",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"NLD",
"RUS",
"FRA",
"MOZ"
],
"xaxis": "x",
"y": [
56971920.58697249,
37718651.33765083,
13068400.931197306,
10293617.6794051,
7318094.390161801,
6876359.386209402,
1310130.3745678
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=railways iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "railways",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "railways",
"offsetgroup": "railways",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"RUS",
"CHN",
"IND",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
36189222.3916378,
12751297.273673149,
8003928.051150542,
4347844.294000002,
329224.6252296653,
64114.91581421662,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=iron-mining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "iron-mining",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "iron-mining",
"offsetgroup": "iron-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"IND",
"CHN",
"RUS",
"USA",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
28783804,
12008510,
8701373.687706254,
2658966.0002456624,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=pulp-and-paper iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "pulp-and-paper",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "pulp-and-paper",
"offsetgroup": "pulp-and-paper",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"RUS",
"IND",
"FRA",
"MOZ",
"NLD"
],
"xaxis": "x",
"y": [
27051940.999999985,
12503236.780999985,
5094980.148999998,
1805050.7999999984,
904616.9999999998,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=net-wetland iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "net-wetland",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "net-wetland",
"offsetgroup": "net-wetland",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"MOZ",
"NLD",
"FRA",
"IND",
"RUS"
],
"xaxis": "x",
"y": [
20827919.75668764,
1415282.8786999967,
223220.30154999893,
-61254.484622900105,
-290832.40656759846,
-1821400.5192870009,
-57951649.93718669
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=textiles-leather-apparel iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "textiles-leather-apparel",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "textiles-leather-apparel",
"offsetgroup": "textiles-leather-apparel",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"USA",
"FRA",
"RUS",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
20186214.5047087,
2205381.08582053,
1749208.7464979703,
259036.233594066,
212125.58116095976,
98517.71573206953,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-metals iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-metals",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "other-metals",
"offsetgroup": "other-metals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"FRA",
"NLD",
"MOZ",
"CHN",
"IND",
"RUS"
],
"xaxis": "x",
"y": [
20041427.99587647,
5010999.992384252,
114999.9998252223,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-mining-quarrying iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-mining-quarrying",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "other-mining-quarrying",
"offsetgroup": "other-mining-quarrying",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"FRA",
"MOZ",
"RUS",
"NLD",
"IND"
],
"xaxis": "x",
"y": [
11256842.340938048,
3742796.820048403,
615126.2200789264,
565409.552233178,
287112.41270130203,
3129.4361362425934,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=copper-mining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "copper-mining",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "copper-mining",
"offsetgroup": "copper-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"RUS",
"IND",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
9999490,
4474437.544003356,
1912912.0081854768,
16704,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=glass iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "glass",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "glass",
"offsetgroup": "glass",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"FRA",
"RUS",
"CHN",
"NLD",
"IND",
"MOZ"
],
"xaxis": "x",
"y": [
9213645.99985768,
5658390.802734126,
3198589.441442125,
2091083.4383450816,
748759.5265805518,
109568.59331457216,
1902.033699754566
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=heat-plants iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "heat-plants",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "heat-plants",
"offsetgroup": "heat-plants",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"NLD",
"FRA",
"USA",
"MOZ",
"RUS",
"IND"
],
"xaxis": "x",
"y": [
9191039,
848086.9999999997,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=wetland-fires iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "wetland-fires",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "wetland-fires",
"offsetgroup": "wetland-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"MOZ",
"USA",
"CHN",
"IND",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
7852899.032129999,
4132136.203642339,
1054654.22401484,
236968.86173716557,
21443.673183358336,
36.35887999999999,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=wood-and-wood-products iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "wood-and-wood-products",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "wood-and-wood-products",
"offsetgroup": "wood-and-wood-products",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"RUS",
"FRA",
"NLD",
"IND",
"MOZ"
],
"xaxis": "x",
"y": [
4472349.29619552,
1930416.04652626,
1285528.5905620602,
207346.52548620096,
24227.55013923849,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-fossil-fuel-operations iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-fossil-fuel-operations",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "other-fossil-fuel-operations",
"offsetgroup": "other-fossil-fuel-operations",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"FRA",
"RUS",
"NLD",
"IND",
"MOZ",
"USA",
"CHN"
],
"xaxis": "x",
"y": [
3840832.0417760615,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=incineration-and-open-burning-of-waste iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "incineration-and-open-burning-of-waste",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "incineration-and-open-burning-of-waste",
"offsetgroup": "incineration-and-open-burning-of-waste",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"FRA",
"NLD",
"IND",
"USA",
"MOZ",
"RUS"
],
"xaxis": "x",
"y": [
3569714.1853857697,
1846611.616033313,
362.4999558033402,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=forest-land-degradation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "forest-land-degradation",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "forest-land-degradation",
"offsetgroup": "forest-land-degradation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"IND",
"CHN",
"MOZ",
"USA",
"FRA",
"NLD",
"RUS"
],
"xaxis": "x",
"y": [
3044949.698569074,
23620.242136180503,
5057.562190299999,
1592.1269901666667,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=bauxite-mining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "bauxite-mining",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "bauxite-mining",
"offsetgroup": "bauxite-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"IND",
"CHN",
"RUS",
"MOZ",
"FRA",
"USA",
"NLD"
],
"xaxis": "x",
"y": [
1561867,
283220.0000261667,
134530.75057566597,
121,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=water-reservoirs iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "water-reservoirs",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "water-reservoirs",
"offsetgroup": "water-reservoirs",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"RUS",
"USA",
"MOZ",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
650588.7916581078,
368116.4901828774,
51993.80840509457,
864.7920921091454,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=rock-quarrying iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "rock-quarrying",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "rock-quarrying",
"offsetgroup": "rock-quarrying",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"FRA",
"NLD",
"USA",
"IND",
"MOZ",
"CHN"
],
"xaxis": "x",
"y": [
328687.00140647346,
60277.99986723528,
34432.999924159936,
8554.000000790304,
802,
108,
23.00000000212497
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=sand-quarrying iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "sand-quarrying",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "sand-quarrying",
"offsetgroup": "sand-quarrying",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"NLD",
"MOZ",
"USA",
"FRA",
"IND",
"RUS",
"CHN"
],
"xaxis": "x",
"y": [
64654.99985759477,
7037,
5272.00000048708,
1115.9999975419653,
15,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=manure-left-on-pasture-cattle iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "manure-left-on-pasture-cattle",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "manure-left-on-pasture-cattle",
"offsetgroup": "manure-left-on-pasture-cattle",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"FRA",
"IND",
"MOZ",
"CHN",
"USA",
"RUS",
"NLD"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=domestic-wastewater-treatment-and-discharge iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "domestic-wastewater-treatment-and-discharge",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "domestic-wastewater-treatment-and-discharge",
"offsetgroup": "domestic-wastewater-treatment-and-discharge",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"RUS",
"USA",
"NLD",
"IND",
"MOZ",
"FRA"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=biological-treatment-of-solid-waste-and-biogenic iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "biological-treatment-of-solid-waste-and-biogenic",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "biological-treatment-of-solid-waste-and-biogenic",
"offsetgroup": "biological-treatment-of-solid-waste-and-biogenic",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"FRA",
"MOZ",
"USA",
"NLD",
"IND",
"CHN"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=rice-cultivation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "rice-cultivation",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "rice-cultivation",
"offsetgroup": "rice-cultivation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"FRA",
"IND",
"RUS",
"USA",
"CHN",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=enteric-fermentation-other iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "enteric-fermentation-other",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "enteric-fermentation-other",
"offsetgroup": "enteric-fermentation-other",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"MOZ",
"NLD",
"FRA",
"RUS",
"IND"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=manure-management-other iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "manure-management-other",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "manure-management-other",
"offsetgroup": "manure-management-other",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"NLD",
"FRA",
"MOZ"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=manure-management-cattle-operation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "manure-management-cattle-operation",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "manure-management-cattle-operation",
"offsetgroup": "manure-management-cattle-operation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"NLD",
"MOZ",
"USA",
"RUS",
"FRA",
"CHN",
"IND"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=solid-waste-disposal iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "solid-waste-disposal",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "solid-waste-disposal",
"offsetgroup": "solid-waste-disposal",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"FRA",
"NLD",
"IND",
"MOZ",
"RUS",
"CHN",
"USA"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=crop-residues iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "crop-residues",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "crop-residues",
"offsetgroup": "crop-residues",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"IND",
"USA",
"FRA",
"CHN",
"RUS",
"MOZ",
"NLD"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=manure-applied-to-soils iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "manure-applied-to-soils",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "manure-applied-to-soils",
"offsetgroup": "manure-applied-to-soils",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"MOZ",
"USA",
"CHN",
"NLD",
"RUS",
"IND",
"FRA"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=industrial-wastewater-treatment-and-discharge iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "industrial-wastewater-treatment-and-discharge",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "industrial-wastewater-treatment-and-discharge",
"offsetgroup": "industrial-wastewater-treatment-and-discharge",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"NLD",
"USA",
"MOZ",
"RUS",
"FRA",
"IND",
"CHN"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=synthetic-fertilizer-application iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "synthetic-fertilizer-application",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "synthetic-fertilizer-application",
"offsetgroup": "synthetic-fertilizer-application",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"NLD",
"CHN",
"MOZ",
"FRA",
"USA",
"IND"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=fluorinated-gases iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "fluorinated-gases",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "fluorinated-gases",
"offsetgroup": "fluorinated-gases",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"IND",
"NLD",
"FRA",
"MOZ",
"USA",
"CHN",
"RUS"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=enteric-fermentation-cattle-operation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "enteric-fermentation-cattle-operation",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "enteric-fermentation-cattle-operation",
"offsetgroup": "enteric-fermentation-cattle-operation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"CHN",
"MOZ",
"NLD",
"IND",
"FRA",
"USA"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=enteric-fermentation-cattle-pasture iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "enteric-fermentation-cattle-pasture",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "enteric-fermentation-cattle-pasture",
"offsetgroup": "enteric-fermentation-cattle-pasture",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"IND",
"NLD",
"CHN",
"MOZ",
"USA",
"FRA"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=removals iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "removals",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "removals",
"offsetgroup": "removals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"NLD",
"IND",
"CHN",
"FRA",
"USA",
"MOZ",
"RUS"
],
"xaxis": "x",
"y": [
-3721265.024076298,
-8969746.386987858,
-36597977.92835712,
-73161476.64153288,
-269888574.459248,
-491401924.20448846,
-647533858.9075568
],
"yaxis": "y"
}
],
"layout": {
"barmode": "relative",
"legend": {
"title": {
"text": "subsector"
},
"tracegroupgap": 0
},
"margin": {
"t": 60
},
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "white",
"showlakes": true,
"showland": true,
"subunitcolor": "#C8D4E3"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "white",
"polar": {
"angularaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
},
"bgcolor": "white",
"radialaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"yaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"zaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"baxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"bgcolor": "white",
"caxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
}
}
},
"xaxis": {
"anchor": "y",
"domain": [
0,
1
],
"title": {
"text": "iso3_country"
}
},
"yaxis": {
"anchor": "x",
"domain": [
0,
1
],
"title": {
"text": "emissions_quantity"
}
}
}
},
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"px.bar(cedf_gy\n",
" .group_by(c_iso3_country, c_subsector)\n",
" .agg(c_emissions_quantity.sum())\n",
" .sort([c_emissions_quantity], descending=True)\n",
" .filter(c_iso3_country.is_in([\n",
" \"CHN\", \"USA\", \"IND\", \"RUS\",\"MOZ\",\"FRA\", \"NLD\"]))\n",
",x=ISO3_COUNTRY, y=EMISSIONS_QUANTITY,color=SUBSECTOR,log_y=False)"
]
},
{
"cell_type": "markdown",
"id": "67ecf794-d2c4-4fc2-bce4-52e0fc4f0d3a",
"metadata": {},
"source": [
"## Source checks\n",
"\n",
"Let's look now at all the sources tracked by Climate TRACE.\n",
"\n",
"We load the data first.\n",
"\n",
"```{note}\n",
"\n",
"Technical\n",
"\n",
"- We load the data using `scan_parquet`. This instructs Polars to delay the actual loading in memory until requested. The amount of memory necessary will then be minimal, even if the dataset itself is 4GB.\n",
"\n",
"- We reset the schema, in particular we add all the information about enumerations. This provides better type checks and helps Polars with optimizing its queries.\n",
"\n",
"```\n",
"\n",
"You can see that Polars has not done any processing if you attempt to display the data:"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "71fcae25-e772-4089-b8bf-f2a16eee3819",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"NAIVE QUERY PLAN run LazyFrame.show_graph() to see the optimized version
\n",
"\n",
"\n",
"\n",
"\n",
"\n",
"polars_query \n",
" \n",
"\n",
"\n",
"p1 \n",
" \n",
"WITH COLUMNS [col("conf_source_type").cast(Enum(Some(local), Physical)).alias("conf_source_type"), col("conf_capacity").cast(Enum(Some(local), Physical)).alias("conf_capacity"), col("conf_capacity_factor").cast(Enum(Some(local), Physical)).alias("conf_capacity_factor"), col("conf_activity").cast(Enum(Some(local), Physical)).alias("conf_activity"), col("conf_emissions_factor").cast(Enum(Some(local), Physical)).alias("conf_emissions_factor"), col("conf_emissions_quantity").cast(Enum(Some(local), Physical)).alias("conf_emissions_quantity")] \n",
" \n",
"\n",
"\n",
"p2 \n",
" \n",
"WITH COLUMNS [col("iso3_country").strict_cast(Enum(Some(local), Physical)).alias("iso3_country"), col("gas").cast(Enum(Some(local), Physical)).alias("gas"), col("temporal_granularity").strict_cast(Enum(Some(local), Physical)).alias("temporal_granularity"), col("subsector").strict_cast(Enum(Some(local), Physical)).alias("subsector"), col("sector").strict_cast(Enum(Some(local), Physical)).alias("sector")] \n",
" \n",
"\n",
"\n",
"p1--p2 \n",
" \n",
" \n",
"\n",
"\n",
"p3 \n",
" \n",
"Parquet SCAN [/media/tjhunter/DATA/xdg_cache/huggingface/hub/datasets--tjhunter--climate-trace/snapshots/8fab3217916ce4aab75e93f9d560f8393650e1c0/v3-2024-ct5/climate_trace-sources_v3-2024-ct5_2023_co2.parquet] \n",
"π */55; \n",
" \n",
"\n",
"\n",
"p2--p3 \n",
" \n",
" \n",
" \n",
" \n"
],
"text/plain": [
""
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sdf_gy = ct.read_source_emissions(gas=gas, year=year)\n",
"sdf_gy"
]
},
{
"cell_type": "markdown",
"id": "8a39c5b9-f9e3-4a05-bad2-2b4b8b505775",
"metadata": {},
"source": [
"How much emissions are released according to the source tracking? This number is significantly higher compared to what was estimated per country (57GT CO2 instead of 41GT CO2). \n",
"\n",
"The forestry and land use category is notoriously hard to estimate, so we are going for now to leave it aside"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "403e7a0b-beed-41bd-aa08-2d3a684855e6",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
shape: (1, 1) emissions_quantity f64 5.7449e10
"
],
"text/plain": [
"shape: (1, 1)\n",
"┌────────────────────┐\n",
"│ emissions_quantity │\n",
"│ --- │\n",
"│ f64 │\n",
"╞════════════════════╡\n",
"│ 5.7449e10 │\n",
"└────────────────────┘"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(sdf_gy\n",
" .filter(c_sector != FORESTRY_AND_LAND_USE)\n",
" .select(c_emissions_quantity.sum())\n",
" .collect()\n",
")"
]
},
{
"cell_type": "markdown",
"id": "2a83030f-a783-4130-949b-68fd6389dba6",
"metadata": {},
"source": [
"### The biggest sources\n",
"\n",
"What are the biggest sources of emissions? Fossil fuel operations (the Permian bassin in Texas, oil fields in Russia) are amongst the largest sources. Agriculture also plays a huge role, especially Brazil and India."
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "27eb578c-a37e-4c84-98da-572df1952071",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
shape: (50, 6) source_id iso3_country sector subsector emissions_quantity source_name u64 enum enum enum f64 str 1241948 "CHN" "buildings" "residential-onsite-fuel-usage" 5.9804e8 "China" 1242200 "USA" "buildings" "residential-onsite-fuel-usage" 4.6791e8 "United States" 3588448 "RUS" "fossil-fuel-operations" "oil-and-gas-transport" 2.5986e8 "Russian Federation_West Siberi… 10720469 "BRA" "agriculture" "cropland-fires" 2.2666e8 "Brazil" 10720302 "IND" "agriculture" "cropland-fires" 2.1886e8 "India" … … … … … … 3597677 "BRA" "transportation" "road-transportation" 4.6394e7 "São Paulo" 3588663 "IRQ" "fossil-fuel-operations" "oil-and-gas-production" 4.6277e7 "Iraq_Widyan - North Arabian Gu… 3600747 "USA" "transportation" "road-transportation" 4.5956e7 "New York" 3588498 "USA" "fossil-fuel-operations" "oil-and-gas-transport" 4.5931e7 "United States_Appalachian_Shal… 3600726 "USA" "transportation" "road-transportation" 4.5479e7 "Illinois"
"
],
"text/plain": [
"shape: (50, 6)\n",
"┌───────────┬──────────────┬─────────────────┬─────────────────┬─────────────────┬─────────────────┐\n",
"│ source_id ┆ iso3_country ┆ sector ┆ subsector ┆ emissions_quant ┆ source_name │\n",
"│ --- ┆ --- ┆ --- ┆ --- ┆ ity ┆ --- │\n",
"│ u64 ┆ enum ┆ enum ┆ enum ┆ --- ┆ str │\n",
"│ ┆ ┆ ┆ ┆ f64 ┆ │\n",
"╞═══════════╪══════════════╪═════════════════╪═════════════════╪═════════════════╪═════════════════╡\n",
"│ 1241948 ┆ CHN ┆ buildings ┆ residential-ons ┆ 5.9804e8 ┆ China │\n",
"│ ┆ ┆ ┆ ite-fuel-usage ┆ ┆ │\n",
"│ 1242200 ┆ USA ┆ buildings ┆ residential-ons ┆ 4.6791e8 ┆ United States │\n",
"│ ┆ ┆ ┆ ite-fuel-usage ┆ ┆ │\n",
"│ 3588448 ┆ RUS ┆ fossil-fuel-ope ┆ oil-and-gas-tra ┆ 2.5986e8 ┆ Russian │\n",
"│ ┆ ┆ rations ┆ nsport ┆ ┆ Federation_West │\n",
"│ ┆ ┆ ┆ ┆ ┆ Siberi… │\n",
"│ 10720469 ┆ BRA ┆ agriculture ┆ cropland-fires ┆ 2.2666e8 ┆ Brazil │\n",
"│ 10720302 ┆ IND ┆ agriculture ┆ cropland-fires ┆ 2.1886e8 ┆ India │\n",
"│ … ┆ … ┆ … ┆ … ┆ … ┆ … │\n",
"│ 3597677 ┆ BRA ┆ transportation ┆ road-transporta ┆ 4.6394e7 ┆ São Paulo │\n",
"│ ┆ ┆ ┆ tion ┆ ┆ │\n",
"│ 3588663 ┆ IRQ ┆ fossil-fuel-ope ┆ oil-and-gas-pro ┆ 4.6277e7 ┆ Iraq_Widyan - │\n",
"│ ┆ ┆ rations ┆ duction ┆ ┆ North Arabian │\n",
"│ ┆ ┆ ┆ ┆ ┆ Gu… │\n",
"│ 3600747 ┆ USA ┆ transportation ┆ road-transporta ┆ 4.5956e7 ┆ New York │\n",
"│ ┆ ┆ ┆ tion ┆ ┆ │\n",
"│ 3588498 ┆ USA ┆ fossil-fuel-ope ┆ oil-and-gas-tra ┆ 4.5931e7 ┆ United States_A │\n",
"│ ┆ ┆ rations ┆ nsport ┆ ┆ ppalachian_Shal │\n",
"│ ┆ ┆ ┆ ┆ ┆ … │\n",
"│ 3600726 ┆ USA ┆ transportation ┆ road-transporta ┆ 4.5479e7 ┆ Illinois │\n",
"│ ┆ ┆ ┆ tion ┆ ┆ │\n",
"└───────────┴──────────────┴─────────────────┴─────────────────┴─────────────────┴─────────────────┘"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(sdf_gy\n",
".filter(c_emissions_quantity > 0)\n",
".filter(c_sector != FORESTRY_AND_LAND_USE)\n",
" .group_by(c_source_id)\n",
" .agg(c_iso3_country.first(), c_sector.first(), c_subsector.first(), c_emissions_quantity.sum(), c_source_name.first())\n",
".top_k(50, by=c_emissions_quantity)\n",
".collect(streaming=True))"
]
},
{
"cell_type": "markdown",
"id": "87e168bb-5c5f-42bc-802b-5adb334b47c8",
"metadata": {},
"source": [
"### Number of tracked sources\n",
"\n",
"How many sources were tracked last year?\n",
"\n",
"We get more than 1.2millions if the forestry and land use changes are included.\n",
"\n",
"Technical:\n",
"\n",
"Notice that we did not need to ingest the data in a database, and yet this query takes less than a second. Pretty good for a decently large dataset! Try to reproduce this analysis in Pandas and see what happens.\n",
"\n",
"\n",
"```{admonition} CTODO\n",
":name: sec-emissions\n",
"The CT map seems to report 1.8M.\n",
"```\n"
]
},
{
"cell_type": "code",
"execution_count": 22,
"id": "fe845e74-a0b9-4892-9428-ba7fd9a926c0",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1265375"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(sdf_gy.select(c_source_id.unique_counts())\n",
" .count()\n",
" .collect()\n",
" .item() # Using .item() to have a single number\n",
")"
]
},
{
"cell_type": "markdown",
"id": "f6e7bcd3-ba5f-49b0-bd0c-565657338f11",
"metadata": {},
"source": [
"Excluding them, we get the number reported officially by Climate TRACE (748k)."
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "471254a9-8566-4c8f-8068-637dd52d961d",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"749594"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(sdf_gy.filter(c_sector != FORESTRY_AND_LAND_USE)\n",
".select(c_source_id.unique_counts())\n",
" .count()\n",
" .collect()\n",
" .item()\n",
")"
]
},
{
"cell_type": "markdown",
"id": "572c2fe1-c5be-4a2a-8383-39cbe6e692e3",
"metadata": {},
"source": [
"Which categories do these records come from?\n",
"\n",
"This shows the full diversity of the sources to consider. The most numerous records concern ships, followed by various treatment plants for cities, forest statistics, etc."
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "ae8b6132-6dd0-4773-803d-a53b73d6e8cb",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"alignmentgroup": "True",
"hovertemplate": "subsector=%{x} count=%{y} ",
"legendgroup": "",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "",
"offsetgroup": "",
"orientation": "v",
"showlegend": false,
"textposition": "auto",
"type": "bar",
"x": [
"enteric-fermentation-cattle-operation",
"manure-management-cattle-operation",
"rice-cultivation",
"removals",
"residential-onsite-fuel-usage",
"net-shrubgrass",
"road-transportation",
"net-forest-land",
"net-wetland",
"cropland-fires",
"forest-land-clearing",
"synthetic-fertilizer-application",
"shrubgrass-fires",
"non-residential-onsite-fuel-usage",
"forest-land-fires",
"domestic-wastewater-treatment-and-discharge",
"enteric-fermentation-cattle-pasture",
"manure-left-on-pasture-cattle",
"forest-land-degradation",
"wetland-fires",
"food-beverage-tobacco",
"textiles-leather-apparel",
"solid-waste-disposal",
"electricity-generation",
"domestic-shipping",
"international-shipping",
"water-reservoirs",
"domestic-aviation",
"international-aviation",
"coal-mining",
"cement",
"lime",
"industrial-wastewater-treatment-and-discharge",
"iron-and-steel",
"iron-mining",
"oil-and-gas-refining",
"copper-mining",
"glass",
"other-chemicals",
"other-metals",
"other-manufacturing",
"chemicals",
"oil-and-gas-production",
"oil-and-gas-transport",
"bauxite-mining",
"pulp-and-paper",
"petrochemical-steam-cracking",
"aluminum"
],
"xaxis": "x",
"y": [
932736,
932736,
721896,
721668,
721152,
719748,
718884,
717120,
697776,
688584,
684240,
652788,
652560,
649932,
647772,
646260,
642888,
642204,
638496,
625584,
177228,
153948,
115500,
106440,
99132,
86256,
84408,
58920,
58920,
45456,
26892,
19308,
15312,
10728,
8664,
8484,
8076,
7668,
5268,
5016,
4776,
4452,
3432,
3432,
3168,
3168,
2808,
2616
],
"yaxis": "y"
}
],
"layout": {
"barmode": "relative",
"legend": {
"tracegroupgap": 0
},
"margin": {
"t": 60
},
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "white",
"showlakes": true,
"showland": true,
"subunitcolor": "#C8D4E3"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "white",
"polar": {
"angularaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
},
"bgcolor": "white",
"radialaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"yaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"zaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"baxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"bgcolor": "white",
"caxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
}
}
},
"xaxis": {
"anchor": "y",
"domain": [
0,
1
],
"title": {
"text": "subsector"
}
},
"yaxis": {
"anchor": "x",
"domain": [
0,
1
],
"title": {
"text": "count"
},
"type": "log"
}
}
},
"image/png": "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",
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"px.bar(sdf_gy\n",
" .select(c_subsector.value_counts(sort=True))\n",
" .collect()\n",
" .unnest(SUBSECTOR),\n",
" x=SUBSECTOR, y=\"count\", log_y=True\n",
")"
]
},
{
"cell_type": "markdown",
"id": "164eef3b-d1fc-41e8-9eac-fbaef75697db",
"metadata": {},
"source": [
"Looking at a few examples of wastewater treatment plants, you see how the data is organized for each source:\n",
"- an identifier, along with country, UNFCCC sectorial categorization, time of data collection\n",
"- the gas considered\n",
"- the main methodology to get the emission: typically a certain quantity of interest, called _activity_ (here a population) multiplied by an _emission factor_\n",
"- more details about the source itself: name, type, position\n",
"- some extra tabular information (always strings in this dataset)\n",
"- qualitative confidence values for each of the values\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "73a1848b-ee15-4b8f-89dc-cd7cec74f071",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
shape: (3, 55) source_id iso3_country sector subsector original_inventory_sector start_time end_time temporal_granularity gas emissions_quantity emissions_factor emissions_factor_units capacity capacity_units capacity_factor activity activity_units created_date modified_date source_name source_type lat lon other1 other2 other3 other4 other5 other6 other7 other8 other9 other10 other11 other12 other1_def other2_def other3_def other4_def other5_def other6_def other7_def other8_def other9_def other10_def other11_def other12_def geometry_ref conf_source_type conf_capacity conf_capacity_factor conf_activity conf_emissions_factor conf_emissions_quantity year u64 enum enum enum str datetime[μs, UTC] datetime[μs, UTC] enum enum f64 f64 str f64 str f64 f64 str datetime[μs, UTC] datetime[μs, UTC] str str f64 f64 str str str str str str str str str str str str str str str str str str str str str str str str str enum enum enum enum enum enum i64 1895560 "CHN" "manufacturing" "cement" null 2023-05-01 00:00:00 UTC 2023-05-31 00:00:00 UTC "month" "co2" 44912.138625 0.54 "t of CO2 per t of cement" 212917.0 "t of cement" 0.390625 83170.627083 "t of cement" 2024-08-21 00:00:00 UTC null "Anyang Hubo Clinker Co Ltd Hen… "integrated dry" 36.085841 114.068585 "0.5952506500000001" "49507.36983219091" "0.34" "28278.013208292858" "0.2" "16634.125416642855" "0.091" "7568.527064572498" "0.60715" "satellite" null null "Direct and Indirect emissions … "Direct and Indirect emissions:… "Calcination emissions factor (… "Calcination emissions (t of CO… "Fuel emissions factor (t of CO… "Fuel emissions (t of CO2)" "electricity_use_factor (MWh pe… "electricity_use (MWh)" "grid_emissions_intensity (t CO… "model_methodology (e.g satelli… null null "trace_1895560" "high" "high" "low" "low" "low" "low" 2023 1895560 "CHN" "manufacturing" "cement" null 2023-06-01 00:00:00 UTC 2023-06-30 00:00:00 UTC "month" "co2" 105667.939179 0.54 "t of CO2 per t of cement" 212917.0 "t of cement" 0.91905 195681.36885 "t of cement" 2024-08-21 00:00:00 UTC null "Anyang Hubo Clinker Co Ltd Hen… "integrated dry" 36.085841 114.068585 "0.5973491099999999" "116890.0915261292" "0.34" "66531.665409" "0.1999999999999999" "39136.27376999999" "0.091" "17807.00456535" "0.63021" "satellite" null null "Direct and Indirect emissions … "Direct and Indirect emissions:… "Calcination emissions factor (… "Calcination emissions (t of CO… "Fuel emissions factor (t of CO… "Fuel emissions (t of CO2)" "electricity_use_factor (MWh pe… "electricity_use (MWh)" "grid_emissions_intensity (t CO… "model_methodology (e.g satelli… null null "trace_1895560" "high" "high" "low" "low" "low" "low" 2023 1895560 "CHN" "manufacturing" "cement" null 2023-07-01 00:00:00 UTC 2023-07-31 00:00:00 UTC "month" "co2" 17822.384777 0.54 "t of CO2 per t of cement" 212917.0 "t of cement" 0.155011 33004.416254 "t of cement" 2024-08-21 00:00:00 UTC null "Anyang Hubo Clinker Co Ltd Hen… "integrated dry" 36.085841 114.068585 "0.59744466" "19718.312247113456" "0.34" "11221.501526214286" "0.2" "6600.883250714286" "0.091" "3003.401879075" "0.63126" "satellite" null null "Direct and Indirect emissions … "Direct and Indirect emissions:… "Calcination emissions factor (… "Calcination emissions (t of CO… "Fuel emissions factor (t of CO… "Fuel emissions (t of CO2)" "electricity_use_factor (MWh pe… "electricity_use (MWh)" "grid_emissions_intensity (t CO… "model_methodology (e.g satelli… null null "trace_1895560" "high" "high" "low" "low" "low" "low" 2023
"
],
"text/plain": [
"shape: (3, 55)\n",
"┌───────────┬────────────┬────────────┬───────────┬───┬────────────┬────────────┬───────────┬──────┐\n",
"│ source_id ┆ iso3_count ┆ sector ┆ subsector ┆ … ┆ conf_activ ┆ conf_emiss ┆ conf_emis ┆ year │\n",
"│ --- ┆ ry ┆ --- ┆ --- ┆ ┆ ity ┆ ions_facto ┆ sions_qua ┆ --- │\n",
"│ u64 ┆ --- ┆ enum ┆ enum ┆ ┆ --- ┆ r ┆ ntity ┆ i64 │\n",
"│ ┆ enum ┆ ┆ ┆ ┆ enum ┆ --- ┆ --- ┆ │\n",
"│ ┆ ┆ ┆ ┆ ┆ ┆ enum ┆ enum ┆ │\n",
"╞═══════════╪════════════╪════════════╪═══════════╪═══╪════════════╪════════════╪═══════════╪══════╡\n",
"│ 1895560 ┆ CHN ┆ manufactur ┆ cement ┆ … ┆ low ┆ low ┆ low ┆ 2023 │\n",
"│ ┆ ┆ ing ┆ ┆ ┆ ┆ ┆ ┆ │\n",
"│ 1895560 ┆ CHN ┆ manufactur ┆ cement ┆ … ┆ low ┆ low ┆ low ┆ 2023 │\n",
"│ ┆ ┆ ing ┆ ┆ ┆ ┆ ┆ ┆ │\n",
"│ 1895560 ┆ CHN ┆ manufactur ┆ cement ┆ … ┆ low ┆ low ┆ low ┆ 2023 │\n",
"│ ┆ ┆ ing ┆ ┆ ┆ ┆ ┆ ┆ │\n",
"└───────────┴────────────┴────────────┴───────────┴───┴────────────┴────────────┴───────────┴──────┘"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(sdf_gy\n",
" .filter(c_sector == MANUFACTURING)\n",
" .filter(c_subsector == CEMENT)\n",
" .head(3)\n",
" .collect()\n",
")"
]
},
{
"cell_type": "markdown",
"id": "5fd911fa-4fbc-48b3-97dd-0a194c44a81f",
"metadata": {},
"source": [
"Looking now at emissions and gathering by country, we get a plot relatively similar to what we saw in the section above.\n",
"\n",
"\n",
"Again, France and the Netherlands barely appear in this graph, and Mozambique's forest management practices have an enormous impact."
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "d3e6791b-dde4-4b6d-afa4-ba97d66f9158",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"alignmentgroup": "True",
"hovertemplate": "subsector=electricity-generation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "electricity-generation",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "electricity-generation",
"offsetgroup": "electricity-generation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"NLD",
"FRA",
"MOZ"
],
"xaxis": "x",
"y": [
5005400853.5,
1472846213.4299958,
1284131521.2800007,
586967013,
23607350.200000007,
16609284,
1199537.9
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=road-transportation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "road-transportation",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "road-transportation",
"offsetgroup": "road-transportation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"RUS",
"IND",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
3517579347.4108973,
1561726699.8845358,
557249258.2047526,
407459474.87310505,
321705226.5624945,
51148506.36085503,
35827826.78744268
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=residential-onsite-fuel-usage iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "residential-onsite-fuel-usage",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "residential-onsite-fuel-usage",
"offsetgroup": "residential-onsite-fuel-usage",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"FRA",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
2065897850.831839,
1719269600.1874402,
688116354.0000637,
639267173.1516241,
206665453.2736199,
64921366.02083975,
498102.79230000003
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=iron-and-steel iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "iron-and-steel",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "iron-and-steel",
"offsetgroup": "iron-and-steel",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"RUS",
"USA",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
1738659727.5086532,
131008311.22150494,
97090147.88115509,
78458926.40724792,
23448385.9886581,
13301230.660038257
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=forest-land-clearing iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "forest-land-clearing",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "forest-land-clearing",
"offsetgroup": "forest-land-clearing",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"USA",
"CHN",
"IND",
"MOZ",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
1695163189.4619062,
1415669261.3023996,
736383938.7809178,
159237418.6130586,
142228911.9236084,
83861755.99158005,
1561907.7581127253
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=forest-land-fires iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "forest-land-fires",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "forest-land-fires",
"offsetgroup": "forest-land-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"MOZ",
"RUS",
"USA",
"IND",
"CHN",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
1255051373.881162,
612670372.1013407,
211953727.99771282,
135196486.96119985,
33833621.940939665,
2010962.2214674323,
3500.4007973816542
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=cement iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "cement",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "cement",
"offsetgroup": "cement",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"RUS",
"USA",
"FRA"
],
"xaxis": "x",
"y": [
780815840.5593724,
113601836.6254862,
33876316.00564227,
32343162.278693903,
11663067.550853726
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=cropland-fires iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "cropland-fires",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "cropland-fires",
"offsetgroup": "cropland-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"RUS",
"USA",
"MOZ",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
689988565.4258906,
671449480.3230534,
81776603.11068058,
16431088.205413613,
5439400.271268841,
1376525.2533198684,
1305.6378421113789
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=net-forest-land iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "net-forest-land",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "net-forest-land",
"offsetgroup": "net-forest-land",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"USA",
"IND",
"CHN",
"MOZ",
"NLD",
"FRA"
],
"xaxis": "x",
"y": [
471497753.64274204,
365964270.7380836,
297578517.48837364,
238738558.73003972,
223283463.9379309,
-7387646.127565638,
-68224597.17960082
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=oil-and-gas-transport iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "oil-and-gas-transport",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "oil-and-gas-transport",
"offsetgroup": "oil-and-gas-transport",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"USA",
"CHN",
"IND",
"NLD",
"MOZ",
"FRA"
],
"xaxis": "x",
"y": [
457050236.93810606,
256751054.7619467,
42550435.83861957,
13079242.960351579,
1760603.952855723,
1701185.2427280457,
125725.09714003837
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=non-residential-onsite-fuel-usage iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "non-residential-onsite-fuel-usage",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "non-residential-onsite-fuel-usage",
"offsetgroup": "non-residential-onsite-fuel-usage",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"RUS",
"FRA",
"IND",
"NLD",
"MOZ"
],
"xaxis": "x",
"y": [
452340717.12788576,
191047018.96163902,
150183917.2706396,
46508667.76805991,
34503424.48992016,
20271750.060809944,
7363.910400000005
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=net-shrubgrass iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "net-shrubgrass",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "net-shrubgrass",
"offsetgroup": "net-shrubgrass",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"RUS",
"IND",
"NLD",
"MOZ",
"FRA"
],
"xaxis": "x",
"y": [
426807356.49336797,
419247287.966633,
177429249.37531835,
-1420772.6605828784,
-3591208.926832631,
-11075448.35689075,
-66565505.01194729
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=oil-and-gas-production iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "oil-and-gas-production",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "oil-and-gas-production",
"offsetgroup": "oil-and-gas-production",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"RUS",
"CHN",
"IND",
"NLD",
"MOZ",
"FRA"
],
"xaxis": "x",
"y": [
373095048.829268,
203388363.82717103,
115452130.50027922,
10761171.346833121,
3782668.13009727,
508785.0753883585,
138780.24417059714
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=lime iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "lime",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "lime",
"offsetgroup": "lime",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"FRA"
],
"xaxis": "x",
"y": [
365302850.5011233,
31108794.001598082,
5103399.98214688
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=chemicals iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "chemicals",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "chemicals",
"offsetgroup": "chemicals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"RUS",
"USA",
"IND",
"NLD",
"FRA"
],
"xaxis": "x",
"y": [
288283025.02648807,
53254045.16600007,
39375317.52000001,
35963696.530999996,
6931724.142000003,
5437766.321999999
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=shrubgrass-fires iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "shrubgrass-fires",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "shrubgrass-fires",
"offsetgroup": "shrubgrass-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"MOZ",
"RUS",
"USA",
"IND",
"CHN",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
277422187.47411764,
89766392.44330913,
28476371.418178424,
11240620.653019113,
11105875.424642554,
325898.5563841096,
842.3223213350291
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=oil-and-gas-refining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "oil-and-gas-refining",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "oil-and-gas-refining",
"offsetgroup": "oil-and-gas-refining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"IND",
"RUS",
"NLD",
"FRA"
],
"xaxis": "x",
"y": [
186289729.3941169,
180659311.94105697,
69784342.63298343,
64022891.83643073,
15194208.37312268,
11627392.964323305
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=aluminum iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "aluminum",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "aluminum",
"offsetgroup": "aluminum",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"RUS",
"USA",
"MOZ",
"FRA"
],
"xaxis": "x",
"y": [
141713194.37409738,
18039567.94191592,
12560164.56279035,
2877842.146487341,
2029982.1256472347,
1510528.4806916153
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=domestic-aviation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "domestic-aviation",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "domestic-aviation",
"offsetgroup": "domestic-aviation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"IND",
"RUS",
"FRA",
"MOZ",
"NLD"
],
"xaxis": "x",
"y": [
123972219.1839112,
87672207.025274,
12235301.748651557,
9524917.785966182,
1635860.339933269,
88035.0899298838,
698.7076560747475
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=domestic-shipping iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "domestic-shipping",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "domestic-shipping",
"offsetgroup": "domestic-shipping",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"RUS",
"NLD",
"FRA",
"IND",
"MOZ"
],
"xaxis": "x",
"y": [
81553551.2152823,
32868599.45370325,
8791445.046162898,
7781131.969331416,
6334512.108903308,
6021659.8013244085,
411090.8342074001
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=international-aviation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "international-aviation",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "international-aviation",
"offsetgroup": "international-aviation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"FRA",
"IND",
"NLD",
"RUS",
"MOZ"
],
"xaxis": "x",
"y": [
72459845.85572623,
21033793.35754356,
17054714.72283154,
11521673.997214502,
9892755.662482314,
4597109.323549411,
127302.5533771172
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-chemicals iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-chemicals",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "other-chemicals",
"offsetgroup": "other-chemicals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA"
],
"xaxis": "x",
"y": [
72184495.000069
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=petrochemical-steam-cracking iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "petrochemical-steam-cracking",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "petrochemical-steam-cracking",
"offsetgroup": "petrochemical-steam-cracking",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"NLD",
"FRA"
],
"xaxis": "x",
"y": [
69604508.55989978,
46142379.25369997,
8759724.071299987,
4728405.263359996,
4661032.177,
3076699.3222
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=net-wetland iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "net-wetland",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "net-wetland",
"offsetgroup": "net-wetland",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"MOZ",
"NLD",
"FRA",
"IND",
"RUS"
],
"xaxis": "x",
"y": [
62459206.871075585,
4353501.30560394,
671130.3349296043,
-224657.09223407702,
-947268.1340428848,
-5364358.00766032,
-174776043.77919042
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=coal-mining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "coal-mining",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "coal-mining",
"offsetgroup": "coal-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"USA",
"RUS",
"MOZ"
],
"xaxis": "x",
"y": [
57492633.93120097,
17597292.839023814,
9268681.116898574,
8504305.674629904,
244641.24635456136
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=international-shipping iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "international-shipping",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "international-shipping",
"offsetgroup": "international-shipping",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"NLD",
"RUS",
"FRA",
"MOZ"
],
"xaxis": "x",
"y": [
56971920.58697242,
37718651.33765089,
13068400.931197288,
10293617.679405076,
7318094.390161804,
6876359.386209391,
1310130.3745677997
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=food-beverage-tobacco iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "food-beverage-tobacco",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "food-beverage-tobacco",
"offsetgroup": "food-beverage-tobacco",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
49392441.814700976,
11147926.81811104,
3120608.927553097
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=wetland-fires iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "wetland-fires",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "wetland-fires",
"offsetgroup": "wetland-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"MOZ",
"USA",
"CHN",
"IND",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
23583535.03245475,
12401286.75579761,
3240185.70135985,
718429.2730033658,
90328.96254385108,
530.7044704079154,
69.56795822988505
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=textiles-leather-apparel iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "textiles-leather-apparel",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "textiles-leather-apparel",
"offsetgroup": "textiles-leather-apparel",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
20186214.354107853,
1749208.7334479638,
362161.8605062827,
259036.23326252965,
98517.71560597816
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-metals iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-metals",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "other-metals",
"offsetgroup": "other-metals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
20041427.995876476,
5010999.992384255,
114999.99982522229
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-manufacturing iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-manufacturing",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "other-manufacturing",
"offsetgroup": "other-manufacturing",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA"
],
"xaxis": "x",
"y": [
16176203.910744684
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=pulp-and-paper iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "pulp-and-paper",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "pulp-and-paper",
"offsetgroup": "pulp-and-paper",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"RUS",
"FRA",
"IND"
],
"xaxis": "x",
"y": [
14650714.511454513,
5430721.039129676,
1214129.742144174,
216393.3712761647,
202665.4504208085
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=glass iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "glass",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "glass",
"offsetgroup": "glass",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
9213645.999857677,
5658390.80273412,
748759.5265805523
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=forest-land-degradation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "forest-land-degradation",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "forest-land-degradation",
"offsetgroup": "forest-land-degradation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"IND",
"CHN",
"MOZ",
"USA",
"RUS",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
9212727.933933256,
70861.28469166002,
15173.794250646637,
7399.29869637867,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=iron-mining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "iron-mining",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "iron-mining",
"offsetgroup": "iron-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"RUS",
"IND",
"USA",
"CHN"
],
"xaxis": "x",
"y": [
8701373.687706264,
4492437,
2658966.000245662,
2540544.00023472
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=copper-mining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "copper-mining",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "copper-mining",
"offsetgroup": "copper-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"RUS",
"IND"
],
"xaxis": "x",
"y": [
7523047.527333937,
4474437.544003356,
1912912.0081854777,
7854
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=bauxite-mining iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "bauxite-mining",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "bauxite-mining",
"offsetgroup": "bauxite-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"IND",
"CHN",
"RUS",
"MOZ"
],
"xaxis": "x",
"y": [
852845,
283220.00002616673,
134530.75057566597,
120.99999999999999
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=water-reservoirs iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "water-reservoirs",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "water-reservoirs",
"offsetgroup": "water-reservoirs",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"IND",
"RUS",
"USA",
"MOZ",
"FRA",
"NLD"
],
"xaxis": "x",
"y": [
650588.7916533083,
368116.4901626471,
51993.80840329999,
864.79209209,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=industrial-wastewater-treatment-and-discharge iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "industrial-wastewater-treatment-and-discharge",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "industrial-wastewater-treatment-and-discharge",
"offsetgroup": "industrial-wastewater-treatment-and-discharge",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"NLD",
"CHN",
"FRA",
"IND",
"RUS"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=rice-cultivation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "rice-cultivation",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "rice-cultivation",
"offsetgroup": "rice-cultivation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"FRA",
"IND",
"NLD",
"MOZ",
"USA",
"RUS",
"CHN"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=enteric-fermentation-cattle-pasture iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "enteric-fermentation-cattle-pasture",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "enteric-fermentation-cattle-pasture",
"offsetgroup": "enteric-fermentation-cattle-pasture",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"FRA",
"USA",
"IND",
"MOZ",
"NLD",
"RUS",
"CHN"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=manure-left-on-pasture-cattle iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "manure-left-on-pasture-cattle",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "manure-left-on-pasture-cattle",
"offsetgroup": "manure-left-on-pasture-cattle",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"USA",
"IND",
"RUS",
"NLD",
"FRA",
"MOZ"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=synthetic-fertilizer-application iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "synthetic-fertilizer-application",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "synthetic-fertilizer-application",
"offsetgroup": "synthetic-fertilizer-application",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"FRA",
"IND",
"NLD",
"MOZ",
"CHN",
"RUS"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=enteric-fermentation-cattle-operation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "enteric-fermentation-cattle-operation",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "enteric-fermentation-cattle-operation",
"offsetgroup": "enteric-fermentation-cattle-operation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"CHN",
"RUS",
"FRA",
"USA"
],
"xaxis": "x",
"y": [
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=solid-waste-disposal iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "solid-waste-disposal",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "solid-waste-disposal",
"offsetgroup": "solid-waste-disposal",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"FRA",
"CHN",
"RUS",
"NLD",
"USA",
"MOZ",
"IND"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=domestic-wastewater-treatment-and-discharge iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "domestic-wastewater-treatment-and-discharge",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "domestic-wastewater-treatment-and-discharge",
"offsetgroup": "domestic-wastewater-treatment-and-discharge",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"FRA",
"RUS",
"MOZ",
"NLD",
"IND",
"USA",
"CHN"
],
"xaxis": "x",
"y": [
0,
0,
0,
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=manure-management-cattle-operation iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "manure-management-cattle-operation",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "manure-management-cattle-operation",
"offsetgroup": "manure-management-cattle-operation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"USA",
"CHN",
"RUS",
"FRA"
],
"xaxis": "x",
"y": [
0,
0,
0,
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=removals iso3_country=%{x} emissions_quantity=%{y} ",
"legendgroup": "removals",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "removals",
"offsetgroup": "removals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"NLD",
"IND",
"CHN",
"FRA",
"USA",
"MOZ",
"RUS"
],
"xaxis": "x",
"y": [
-12813060.638324913,
-23505832.44651438,
-112289439.4753471,
-222519638.69167718,
-809178311.7914941,
-1474216896.6709538,
-1946082629.773201
],
"yaxis": "y"
}
],
"layout": {
"barmode": "relative",
"legend": {
"title": {
"text": "subsector"
},
"tracegroupgap": 0
},
"margin": {
"t": 60
},
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "white",
"showlakes": true,
"showland": true,
"subunitcolor": "#C8D4E3"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "white",
"polar": {
"angularaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
},
"bgcolor": "white",
"radialaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"yaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"zaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"baxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"bgcolor": "white",
"caxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
}
}
},
"xaxis": {
"anchor": "y",
"domain": [
0,
1
],
"title": {
"text": "iso3_country"
}
},
"yaxis": {
"anchor": "x",
"domain": [
0,
1
],
"title": {
"text": "emissions_quantity"
}
}
}
},
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"px.bar(\n",
"(sdf_gy\n",
".group_by(c_iso3_country, c_subsector)\n",
" .agg(c_emissions_quantity.sum())\n",
" .sort([c_emissions_quantity], descending=True)\n",
" .filter(c_iso3_country.is_in([\"CHN\", \"USA\", \"IND\", \"RUS\",\"MOZ\",\"FRA\", \"NLD\"]))\n",
" .collect()\n",
")\n",
" ,x=ISO3_COUNTRY, y=EMISSIONS_QUANTITY,color=SUBSECTOR,log_y=False)"
]
},
{
"cell_type": "markdown",
"id": "dc2fc550-7083-4890-b6ca-6829f50f6aa8",
"metadata": {},
"source": [
"Looking by sector, it is easy to see why the forestry and land use sector is complex: it would dominate both in\n",
"retention and in emission."
]
},
{
"cell_type": "code",
"execution_count": 27,
"id": "e96be295-8a31-465a-bbf6-52143001f337",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"alignmentgroup": "True",
"hovertemplate": "subsector=forest-land-fires sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "forest-land-fires",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "forest-land-fires",
"offsetgroup": "forest-land-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
19222980103.937088
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=forest-land-clearing sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "forest-land-clearing",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "forest-land-clearing",
"offsetgroup": "forest-land-clearing",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
17900851037.231804
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=road-transportation sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "road-transportation",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "road-transportation",
"offsetgroup": "road-transportation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"transportation"
],
"xaxis": "x",
"y": [
14989651642.286982
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=electricity-generation sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "electricity-generation",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "electricity-generation",
"offsetgroup": "electricity-generation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"power"
],
"xaxis": "x",
"y": [
12950079321.432007
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=residential-onsite-fuel-usage sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "residential-onsite-fuel-usage",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "residential-onsite-fuel-usage",
"offsetgroup": "residential-onsite-fuel-usage",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"buildings"
],
"xaxis": "x",
"y": [
10644718204.96972
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=shrubgrass-fires sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "shrubgrass-fires",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "shrubgrass-fires",
"offsetgroup": "shrubgrass-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
8064987215.256308
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=cropland-fires sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "cropland-fires",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "cropland-fires",
"offsetgroup": "cropland-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"agriculture"
],
"xaxis": "x",
"y": [
4028594980.206557
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=net-shrubgrass sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "net-shrubgrass",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "net-shrubgrass",
"offsetgroup": "net-shrubgrass",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
3937558783.335973
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=net-forest-land sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "net-forest-land",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "net-forest-land",
"offsetgroup": "net-forest-land",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
3099151479.85434
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=iron-and-steel sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "iron-and-steel",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "iron-and-steel",
"offsetgroup": "iron-and-steel",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
2876371103.393839
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=oil-and-gas-production sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "oil-and-gas-production",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "oil-and-gas-production",
"offsetgroup": "oil-and-gas-production",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"fossil-fuel-operations"
],
"xaxis": "x",
"y": [
2258459324.3493996
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=non-residential-onsite-fuel-usage sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "non-residential-onsite-fuel-usage",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "non-residential-onsite-fuel-usage",
"offsetgroup": "non-residential-onsite-fuel-usage",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"buildings"
],
"xaxis": "x",
"y": [
1639167825.7046826
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=oil-and-gas-transport sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "oil-and-gas-transport",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "oil-and-gas-transport",
"offsetgroup": "oil-and-gas-transport",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"fossil-fuel-operations"
],
"xaxis": "x",
"y": [
1575755434.9851868
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=cement sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "cement",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "cement",
"offsetgroup": "cement",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
1515511397.5841324
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=oil-and-gas-refining sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "oil-and-gas-refining",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "oil-and-gas-refining",
"offsetgroup": "oil-and-gas-refining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"fossil-fuel-operations"
],
"xaxis": "x",
"y": [
976951265.2320362
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=forest-land-degradation sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "forest-land-degradation",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "forest-land-degradation",
"offsetgroup": "forest-land-degradation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
867602834.0197109
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=chemicals sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "chemicals",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "chemicals",
"offsetgroup": "chemicals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
563180202.2524868
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=international-shipping sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "international-shipping",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "international-shipping",
"offsetgroup": "international-shipping",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"transportation"
],
"xaxis": "x",
"y": [
561442930.4706753
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=international-aviation sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "international-aviation",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "international-aviation",
"offsetgroup": "international-aviation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"transportation"
],
"xaxis": "x",
"y": [
526418515.44411427
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=lime sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "lime",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "lime",
"offsetgroup": "lime",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
425073909.34948826
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=domestic-shipping sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "domestic-shipping",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "domestic-shipping",
"offsetgroup": "domestic-shipping",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"transportation"
],
"xaxis": "x",
"y": [
387147472.33439684
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=domestic-aviation sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "domestic-aviation",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "domestic-aviation",
"offsetgroup": "domestic-aviation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"transportation"
],
"xaxis": "x",
"y": [
324575279.04927576
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=aluminum sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "aluminum",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "aluminum",
"offsetgroup": "aluminum",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
285293600.01787066
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=wetland-fires sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "wetland-fires",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "wetland-fires",
"offsetgroup": "wetland-fires",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
274981099.0014777
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=petrochemical-steam-cracking sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "petrochemical-steam-cracking",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "petrochemical-steam-cracking",
"offsetgroup": "petrochemical-steam-cracking",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
274335614.4733184
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=coal-mining sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "coal-mining",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "coal-mining",
"offsetgroup": "coal-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"fossil-fuel-operations"
],
"xaxis": "x",
"y": [
136786459.55694064
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=food-beverage-tobacco sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "food-beverage-tobacco",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "food-beverage-tobacco",
"offsetgroup": "food-beverage-tobacco",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
105591766.34700495
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=copper-mining sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "copper-mining",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "copper-mining",
"offsetgroup": "copper-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"mineral-extraction"
],
"xaxis": "x",
"y": [
79143689.27682821
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-chemicals sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-chemicals",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "other-chemicals",
"offsetgroup": "other-chemicals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
74014653.69212107
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=iron-mining sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "iron-mining",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "iron-mining",
"offsetgroup": "iron-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"mineral-extraction"
],
"xaxis": "x",
"y": [
61037001.531346105
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=textiles-leather-apparel sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "textiles-leather-apparel",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "textiles-leather-apparel",
"offsetgroup": "textiles-leather-apparel",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
45097333.2411402
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=pulp-and-paper sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "pulp-and-paper",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "pulp-and-paper",
"offsetgroup": "pulp-and-paper",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
43125897.26306621
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-metals sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-metals",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "other-metals",
"offsetgroup": "other-metals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
37832929.83312549
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=glass sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "glass",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "glass",
"offsetgroup": "glass",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
36700146.62766724
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=other-manufacturing sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "other-manufacturing",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "other-manufacturing",
"offsetgroup": "other-manufacturing",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"manufacturing"
],
"xaxis": "x",
"y": [
17304732.34304842
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=bauxite-mining sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "bauxite-mining",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "bauxite-mining",
"offsetgroup": "bauxite-mining",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"mineral-extraction"
],
"xaxis": "x",
"y": [
9115496.738281574
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=water-reservoirs sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "water-reservoirs",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "water-reservoirs",
"offsetgroup": "water-reservoirs",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
3066791.092056217
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=solid-waste-disposal sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "solid-waste-disposal",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "solid-waste-disposal",
"offsetgroup": "solid-waste-disposal",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"waste"
],
"xaxis": "x",
"y": [
618125.2465617716
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=enteric-fermentation-cattle-pasture sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "enteric-fermentation-cattle-pasture",
"marker": {
"color": "#FF97FF",
"pattern": {
"shape": ""
}
},
"name": "enteric-fermentation-cattle-pasture",
"offsetgroup": "enteric-fermentation-cattle-pasture",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"agriculture"
],
"xaxis": "x",
"y": [
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=industrial-wastewater-treatment-and-discharge sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "industrial-wastewater-treatment-and-discharge",
"marker": {
"color": "#FECB52",
"pattern": {
"shape": ""
}
},
"name": "industrial-wastewater-treatment-and-discharge",
"offsetgroup": "industrial-wastewater-treatment-and-discharge",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"waste"
],
"xaxis": "x",
"y": [
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=domestic-wastewater-treatment-and-discharge sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "domestic-wastewater-treatment-and-discharge",
"marker": {
"color": "#636efa",
"pattern": {
"shape": ""
}
},
"name": "domestic-wastewater-treatment-and-discharge",
"offsetgroup": "domestic-wastewater-treatment-and-discharge",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"waste"
],
"xaxis": "x",
"y": [
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=manure-left-on-pasture-cattle sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "manure-left-on-pasture-cattle",
"marker": {
"color": "#EF553B",
"pattern": {
"shape": ""
}
},
"name": "manure-left-on-pasture-cattle",
"offsetgroup": "manure-left-on-pasture-cattle",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"agriculture"
],
"xaxis": "x",
"y": [
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=manure-management-cattle-operation sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "manure-management-cattle-operation",
"marker": {
"color": "#00cc96",
"pattern": {
"shape": ""
}
},
"name": "manure-management-cattle-operation",
"offsetgroup": "manure-management-cattle-operation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"agriculture"
],
"xaxis": "x",
"y": [
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=rice-cultivation sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "rice-cultivation",
"marker": {
"color": "#ab63fa",
"pattern": {
"shape": ""
}
},
"name": "rice-cultivation",
"offsetgroup": "rice-cultivation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"agriculture"
],
"xaxis": "x",
"y": [
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=enteric-fermentation-cattle-operation sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "enteric-fermentation-cattle-operation",
"marker": {
"color": "#FFA15A",
"pattern": {
"shape": ""
}
},
"name": "enteric-fermentation-cattle-operation",
"offsetgroup": "enteric-fermentation-cattle-operation",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"agriculture"
],
"xaxis": "x",
"y": [
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=synthetic-fertilizer-application sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "synthetic-fertilizer-application",
"marker": {
"color": "#19d3f3",
"pattern": {
"shape": ""
}
},
"name": "synthetic-fertilizer-application",
"offsetgroup": "synthetic-fertilizer-application",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"agriculture"
],
"xaxis": "x",
"y": [
0
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=net-wetland sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "net-wetland",
"marker": {
"color": "#FF6692",
"pattern": {
"shape": ""
}
},
"name": "net-wetland",
"offsetgroup": "net-wetland",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
-319832951.8489239
],
"yaxis": "y"
},
{
"alignmentgroup": "True",
"hovertemplate": "subsector=removals sector=%{x} emissions_quantity=%{y} ",
"legendgroup": "removals",
"marker": {
"color": "#B6E880",
"pattern": {
"shape": ""
}
},
"name": "removals",
"offsetgroup": "removals",
"orientation": "v",
"showlegend": true,
"textposition": "auto",
"type": "bar",
"x": [
"forestry-and-land-use"
],
"xaxis": "x",
"y": [
-39611142317.46093
],
"yaxis": "y"
}
],
"layout": {
"barmode": "relative",
"legend": {
"title": {
"text": "subsector"
},
"tracegroupgap": 0
},
"margin": {
"t": 60
},
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "white",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "#C8D4E3",
"linecolor": "#C8D4E3",
"minorgridcolor": "#C8D4E3",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "white",
"showlakes": true,
"showland": true,
"subunitcolor": "#C8D4E3"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "white",
"polar": {
"angularaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
},
"bgcolor": "white",
"radialaxis": {
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"yaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
},
"zaxis": {
"backgroundcolor": "white",
"gridcolor": "#DFE8F3",
"gridwidth": 2,
"linecolor": "#EBF0F8",
"showbackground": true,
"ticks": "",
"zerolinecolor": "#EBF0F8"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"baxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
},
"bgcolor": "white",
"caxis": {
"gridcolor": "#DFE8F3",
"linecolor": "#A2B1C6",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "#EBF0F8",
"linecolor": "#EBF0F8",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "#EBF0F8",
"zerolinewidth": 2
}
}
},
"xaxis": {
"anchor": "y",
"domain": [
0,
1
],
"title": {
"text": "sector"
}
},
"yaxis": {
"anchor": "x",
"domain": [
0,
1
],
"title": {
"text": "emissions_quantity"
}
}
}
},
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"px.bar(\n",
"(sdf_gy\n",
".group_by(c_sector, c_subsector)\n",
" .agg(c_emissions_quantity.sum())\n",
" .sort([c_emissions_quantity], descending=True)\n",
" .collect()\n",
")\n",
" ,x=SECTOR, y=EMISSIONS_QUANTITY,color=SUBSECTOR,log_y=False)"
]
},
{
"cell_type": "markdown",
"id": "5d43da77-d964-4e3d-8a69-2950c3acc309",
"metadata": {},
"source": [
"## Conclusion\n",
"\n",
"In this section, we saw:\n",
"- how to access the Climate TRACE dataset in a modern data processing tool (Polars)\n",
"- how to produce high-level statistics per country and per sector\n",
"\n",
"From the data, it should be clear that tackling emissions is a global issue, in which a few countries dominate.\n",
"Some countries with large economic outputs (France, The Netherlands) can have minimal emissions, in part because they have low-emission means of producing electricity and they have outsourced their industries. Some others with comparably small economic outputs or populations (ex: Mozambique) have a disproportionate impact because of the changes occurring in their ecosystems.\n",
"\n",
"```{seealso} Exercise\n",
"Take your country look at the sources of emissions and explore how the different gases provide different perspectives.\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "6aef1b12-4dc1-4152-85c3-9425adcc5789",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.12"
}
},
"nbformat": 4,
"nbformat_minor": 5
}