Los grupos de atributos relacionados se pueden combinar en una FeatureCollection
para permitir operaciones adicionales en todo el conjunto, como filtrar, ordenar y renderizar.
Además de los componentes simples (geometría y propiedades), las colecciones de componentes también pueden contener otras colecciones.
El constructor FeatureCollection
Una forma de crear un FeatureCollection
es proporcionarle al constructor una lista de atributos. No es necesario que los componentes tengan el mismo tipo de geometría ni las mismas propiedades. Por ejemplo:
// Make a list of Features. var features = [ ee.Feature(ee.Geometry.Rectangle(30.01, 59.80, 30.59, 60.15), {name: 'Voronoi'}), ee.Feature(ee.Geometry.Point(-73.96, 40.781), {name: 'Thiessen'}), ee.Feature(ee.Geometry.Point(6.4806, 50.8012), {name: 'Dirichlet'}) ]; // Create a FeatureCollection from the list and print it. var fromList = ee.FeatureCollection(features); print(fromList);
import ee import geemap.core as geemap
# Make a list of Features. features = [ ee.Feature( ee.Geometry.Rectangle(30.01, 59.80, 30.59, 60.15), {'name': 'Voronoi'} ), ee.Feature(ee.Geometry.Point(-73.96, 40.781), {'name': 'Thiessen'}), ee.Feature(ee.Geometry.Point(6.4806, 50.8012), {'name': 'Dirichlet'}), ] # Create a FeatureCollection from the list and print it. from_list = ee.FeatureCollection(features) display(from_list)
Las geometrías individuales también se pueden convertir en un FeatureCollection
de
un solo Feature
:
// Create a FeatureCollection from a single geometry and print it. var fromGeom = ee.FeatureCollection(ee.Geometry.Point(16.37, 48.225)); print(fromGeom);
import ee import geemap.core as geemap
# Create a FeatureCollection from a single geometry and print it. from_geom = ee.FeatureCollection(ee.Geometry.Point(16.37, 48.225)) display(from_geom)
Conjuntos de datos de tablas
Earth Engine aloja una variedad de conjuntos de datos de tablas. Para cargar un conjunto de datos de tabla, proporciona el ID de la tabla al constructor FeatureCollection
. Por ejemplo, para cargar datos de las ecorregiones de RESOLVE, haz lo siguiente:
var fc = ee.FeatureCollection('RESOLVE/ECOREGIONS/2017'); Map.setCenter(12.17, 20.96, 3); Map.addLayer(fc, {}, 'ecoregions');
import ee import geemap.core as geemap
fc = ee.FeatureCollection('RESOLVE/ECOREGIONS/2017') m = geemap.Map() m.set_center(12.17, 20.96, 3) m.add_layer(fc, {}, 'ecoregions') display(m)
Ten en cuenta que, al igual que con los conjuntos de datos de imágenes, puedes buscar conjuntos de datos de tablas en el Catálogo de datos de Earth Engine.
Muestras aleatorias
Para obtener una colección de puntos aleatorios en una región especificada, puedes usar lo siguiente:
// Define an arbitrary region in which to compute random points. var region = ee.Geometry.Rectangle(-119.224, 34.669, -99.536, 50.064); // Create 1000 random points in the region. var randomPoints = ee.FeatureCollection.randomPoints(region); // Display the points. Map.centerObject(randomPoints); Map.addLayer(randomPoints, {}, 'random points');
import ee import geemap.core as geemap
# Define an arbitrary region in which to compute random points. region = ee.Geometry.Rectangle(-119.224, 34.669, -99.536, 50.064) # Create 1000 random points in the region. random_points = ee.FeatureCollection.randomPoints(region) # Display the points. m = geemap.Map() m.center_object(random_points) m.add_layer(random_points, {}, 'random points') display(m)