AI-generated Key Takeaways
-
The
reduceToImagefunction creates an image from a feature collection by applying a reducer over selected feature properties intersecting each pixel. -
This function takes a feature collection, a list of properties, and a reducer as arguments and returns an image.
-
The provided examples demonstrate how to use
reduceToImagein both JavaScript and Python to visualize the sum of electricity generation from power plants.
| Usage | Returns |
|---|---|
FeatureCollection.
reduceToImage
(properties, reducer)
|
Image |
| Argument | Type | Details |
|---|---|---|
|
this:
collection
|
FeatureCollection | Feature collection to intersect with each output pixel. |
properties
|
List | Properties to select from each feature and pass into the reducer. |
reducer
|
Reducer | A Reducer to combine the properties of each intersecting feature into a final result to store in the pixel. |
Examples
Code Editor (JavaScript)
// FeatureCollection of power plants in Belgium. var fc = ee . FeatureCollection ( 'WRI/GPPD/power_plants' ) . filter ( 'country_lg == "Belgium"' ); // Create an image from features; pixel values are determined from reduction of // property values of the features intersecting each pixel. var image = fc . reduceToImage ({ properties : [ 'gwh_estimt' ], reducer : ee . Reducer . sum () }); // The goal is to sum the electricity generated in 2015 for the power plants // intersecting 10 km cells and view the result as a map layer. // ee.FeatureCollection.reduceToImage does not allow the image projection to be // set because it is waiting on downstream functions that include "crs", // "scale", and "crsTransform" parameters to define it (e.g., Export.image.*). // Here, we'll force the projection with ee.Image.reproject so the result can be // viewed in the map. Note that using small scales with reproject while viewing // large regions breaks the features that make Earth Engine fast and may result // in poor performance and/or errors. image = image . reproject ( 'EPSG:3035' , null , 10000 ); // Display the image on the map. Map . setCenter ( 4.3376 , 50.947 , 8 ); Map . setLocked ( true ); Map . addLayer ( image . updateMask ( image . gt ( 0 )), { min : 0 , max : 2000 , palette : [ 'yellow' , 'orange' , 'red' ]}, 'Total estimated annual electricity generation, 2015' ); Map . addLayer ( fc , null , 'Belgian power plants' );
import ee import geemap.core as geemap
Colab (Python)
# FeatureCollection of power plants in Belgium. fc = ee . FeatureCollection ( 'WRI/GPPD/power_plants' ) . filter ( 'country_lg == "Belgium"' ) # Create an image from features pixel values are determined from reduction of # property values of the features intersecting each pixel. image = fc . reduceToImage ( properties = [ 'gwh_estimt' ], reducer = ee . Reducer . sum ()) # The goal is to sum the electricity generated in 2015 for the power plants # intersecting 10 km cells and view the result as a map layer. # ee.FeatureCollection.reduceToImage does not allow the image projection to be # set because it is waiting on downstream functions that include "crs", # "scale", and "crsTransform" parameters to define it (e.g., Export.image.*). # Here, we'll force the projection with ee.Image.reproject so the result can be # viewed in the map. Note that using small scales with reproject while viewing # large regions breaks the features that make Earth Engine fast and may result # in poor performance and/or errors. image = image . reproject ( 'EPSG:3035' , None , 10000 ) # Display the image on the map. m = geemap . Map () m . set_center ( 4.3376 , 50.947 , 8 ) m . add_layer ( image . updateMask ( image . gt ( 0 )), { 'min' : 0 , 'max' : 2000 , 'palette' : [ 'yellow' , 'orange' , 'red' ]}, 'Total estimated annual electricity generation, 2015' , ) m . add_layer ( fc , None , 'Belgian power plants' ) m

