Global Power Plant Database

WRI/GPPD/power_plants
Dataset Availability
2018-06-11T00:00:00Z–2018-06-11T00:00:00Z
Dataset Provider
Earth Engine Snippet
FeatureCollection
ee.FeatureCollection("WRI/GPPD/power_plants")
FeatureView
ui.Map.FeatureViewLayer("WRI/GPPD/power_plants_FeatureView")
Tags
climate wri
energy
infrastructure
power
power-plants

Description

The Global Power Plant Database is a comprehensive, open source database of power plants around the world. It centralizes power plant data to make it easier to navigate, compare and draw insights. Each power plant is geolocated and entries contain information on plant capacity, generation, ownership, and fuel type. As of June 2018, the database includes around 28,500 power plants from 164 countries. It will be continuously updated as data becomes available.

The methodology for the dataset creation is given in the World Resources Institute publication "A Global Database of Power Plants".

Associated code for the creation of the dataset can be found on GitHub. The bleeding-edge version of the database (which may contain substantial differences from the release in Earth Engine) is available on GitHub as well.

If you use this dataset, the provider (WRI) has requested that you register your use and (optionally) sign up to receive update notifications.

Table Schema

Table Schema

Name Type Description
country STRING

3-character country code corresponding to the ISO 3166-1 alpha-3 specs

country_lg STRING

Longer form of the country designation

name STRING

Name or title of the power plant, generally in Romanized form

gppd_idnr STRING

10- or 12-character identifier for the power plant

capacitymw DOUBLE

Electrical generating capacity in megawatts

latitude DOUBLE

Geolocation in decimal degrees

longitude DOUBLE

Geolocation in decimal degrees

fuel1 STRING

Energy source used in electricity generation or export

fuel2 STRING

Energy source used in electricity generation or export

fuel3 STRING

Energy source used in electricity generation or export

fuel4 STRING

Energy source used in electricity generation or export

comm_year STRING

Year of plant operation, weighted by unit-capacity when data is available

owner STRING

Majority shareholder of the power plant, generally in Romanized form

source STRING

Entity reporting the data; could be an organization, report, or document, generally in Romanized form

url STRING

Web document corresponding to the "source" field

src_latlon STRING

Attribution for geolocation information

cap_year DOUBLE

Year the capacity information was reported

gwh_2013 DOUBLE

Electricity generation in gigawatt-hours reported for the year 2013

gwh_2014 DOUBLE

Electricity generation in gigawatt-hours reported for the year 2014

gwh_2015 DOUBLE

Electricity generation in gigawatt-hours reported for the year 2015

gwh_2016 DOUBLE

Electricity generation in gigawatt-hours reported for the year 2016

gwh_estimt DOUBLE

Estimated annual electricity generation in gigawatt-hours for the year 2015

Terms of Use

Terms of Use

CC-BY-4.0

Citations

Citations:

Explore with Earth Engine

Code Editor (JavaScript)

// Visualization for WRI/GPPD/power_plants

var table = ee.FeatureCollection('WRI/GPPD/power_plants');

// Get a color from a fuel
var fuelColor = ee.Dictionary({
  'Coal': '000000',
  'Oil': '593704',
  'Gas': 'bc80bd',
  'Hydro': '0565A6',
  'Nuclear': 'e31a1c',
  'Solar': 'ff7f00',
  'Waste': '6a3d9a',
  'Wind': '5ca2d1',
  'Geothermal': 'fdbf6f',
  'Biomass': '229a00'
});

// List of fuels to add to the map
var fuels = [
    'Coal', 'Oil', 'Gas', 'Hydro', 'Nuclear',
    'Solar', 'Waste', 'Wind', 'Geothermal', 'Biomass'];

/**
 * Computes size from capacity and color from fuel type.
 *
 * @param {!ee.Geometry.Point} pt A point
 * @return {!ee.Geometry.Point} Input point with added style dictionary.
 */
function addStyle(pt) {
  var size = ee.Number(pt.get('capacitymw')).sqrt().divide(10).add(2);
  var color = fuelColor.get(pt.get('fuel1'));
  return pt.set(
      'styleProperty', ee.Dictionary({'pointSize': size, 'color': color}));
}

// Make a FeatureCollection out of the power plant data table.
var pp = ee.FeatureCollection(table).map(addStyle);
print(pp.first());

/**
 * Adds power plants of a certain fuel type to the map.
 *
 * @param {string} fuel A fuel type
 */
function addLayer(fuel) {
  print(fuel);
  Map.addLayer(
      pp.filter(ee.Filter.eq('fuel1', fuel))
          .style({styleProperty: 'styleProperty', neighborhood: 50}),
      {}, fuel, true, 0.65);
}

// Apply `addLayer` to each record in `fuels`.
fuelColor.keys().evaluate(function(fuelsList) {
  fuelsList.map(addLayer);
});
Open in Code Editor

Visualize as a FeatureView

A FeatureView is a view-only, accelerated representation of a FeatureCollection. For more details, visit the FeatureView documentation.

Code Editor (JavaScript)

var fvLayer = ui.Map.FeatureViewLayer('WRI/GPPD/power_plants_FeatureView');

var visParams = {
  opacity: 0.65,
  color: {
    property: 'fuel1',
    categories: [
      ['Coal', '000000'],
      ['Oil', '593704'],
      ['Gas', 'bc80bd'],
      ['Hydro', '0565a6'],
      ['Nuclear', 'e31a1c'],
      ['Solar', 'ff7f00'],
      ['Waste', '6a3d9a'],
      ['Wind', '5ca2d1'],
      ['Geothermal', 'fdbf6f'],
      ['Biomass', '229a00']
    ],
    defaultValue: 'ffffff'
  },
  rules: [
    {
      filter: ee.Filter.expression('capacitymw < 500'),
      pointSize: 5,
    },
    {
      filter: ee.Filter.expression('capacitymw >= 500 AND capacitymw < 1000'),
      pointSize: 10,
    },
    {
      filter: ee.Filter.expression('capacitymw >= 1000'),
      pointSize: 15,
    }
  ]
};

fvLayer.setVisParams(visParams);
fvLayer.setName('Power plant (fuel type and capacity)');

Map.setCenter(16, 49, 4);
Map.add(fvLayer);
Open in Code Editor