Grupy powiązanych funkcji można łączyć w komponent FeatureCollection
, aby umożliwić dodatkowe operacje na całym zbiorze, takie jak filtrowanie, sortowanie i renderowanie.
Oprócz prostych elementów (geometrya + właściwości) kolekcje elementów mogą zawierać również inne kolekcje.
Konstruktor FeatureCollection
Jedną z możliwości utworzenia obiektu FeatureCollection
jest przekazanie konstruktorowi listy funkcji. Funkcje nie muszą mieć tego samego typu geometrii ani tych samych właściwości. Na przykład:
Edytor kodu (JavaScript)
// 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
Colab (Python)
# 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)
Poszczególne geometrie można też przekształcić w FeatureCollection
tylko jednego Feature
:
Edytor kodu (JavaScript)
// 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
Colab (Python)
# Create a FeatureCollection from a single geometry and print it. from_geom = ee.FeatureCollection(ee.Geometry.Point(16.37, 48.225)) display(from_geom)
Zbiory danych tabeli
Earth Engine hostuje wiele zbiorów danych w postaci tabel. Aby załadować zbiór danych tabeli, podaj konstruktorowi FeatureCollection
identyfikator tabeli. Aby na przykład załadować dane dotyczące ekoregionów z RESOLVE:
Edytor kodu (JavaScript)
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
Colab (Python)
fc = ee.FeatureCollection('RESOLVE/ECOREGIONS/2017') m = geemap.Map() m.set_center(12.17, 20.96, 3) m.add_layer(fc, {}, 'ecoregions') display(m)
Podobnie jak w przypadku zbiorów danych obrazów, zbiory danych tabeli możesz wyszukiwać w Earth Engine Data Catalog.
Losowe próbki
Aby uzyskać zbiór losowych punktów w określonym regionie, możesz użyć:
Edytor kodu (JavaScript)
// 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
Colab (Python)
# 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)