FeatureCollection पर मैपिंग करना

किसी FeatureCollection में मौजूद हर Feature पर एक ही कार्रवाई लागू करने के लिए, featureCollection.map() का इस्तेमाल करें. उदाहरण के लिए, किसी जलक्षेत्र FeatureCollection में मौजूद हर सुविधा के लिए, कोई दूसरा क्षेत्र एट्रिब्यूट जोड़ने के लिए, इनका इस्तेमाल करें:

कोड एडिटर (JavaScript)

// Load watersheds from a data table.
var sheds = ee.FeatureCollection('USGS/WBD/2017/HUC06');

// This function computes the feature's geometry area and adds it as a property.
var addArea = function(feature) {
  return feature.set({areaHa: feature.geometry().area().divide(100 * 100)});
};

// Map the area getting function over the FeatureCollection.
var areaAdded = sheds.map(addArea);

// Print the first feature from the collection with the added property.
print('First feature:', areaAdded.first());

Python सेटअप

Python API के बारे में जानकारी पाने और इंटरैक्टिव डेवलपमेंट के लिए geemap का इस्तेमाल करने के लिए, Python एनवायरमेंट पेज देखें.

import ee
import geemap.core as geemap

Colab (Python)

# Load watersheds from a data table.
sheds = ee.FeatureCollection('USGS/WBD/2017/HUC06')

# Map an area calculation function over the FeatureCollection.
area_added = sheds.map(
    lambda feature: feature.set(
        {'areaHa': feature.geometry().area().divide(100 * 100)}
    )
)

# Print the first feature from the collection with the added property.
display('First feature:', area_added.first())

पिछले उदाहरण में, ध्यान दें कि नई प्रॉपर्टी, फ़ीचर की ज्यामिति के हिसाब से किए गए कैलकुलेशन के आधार पर सेट की गई है. मौजूदा प्रॉपर्टी के हिसाब से कैलकुलेशन का इस्तेमाल करके भी प्रॉपर्टी सेट की जा सकती हैं.

map() की मदद से, पूरी तरह से नया FeatureCollection जनरेट किया जा सकता है. यहां दिए गए उदाहरण में, वाटरशेड को सेंट्राइड में बदला गया है:

कोड एडिटर (JavaScript)

// This function creates a new feature from the centroid of the geometry.
var getCentroid = function(feature) {
  // Keep this list of properties.
  var keepProperties = ['name', 'huc6', 'tnmid', 'areasqkm'];
  // Get the centroid of the feature's geometry.
  var centroid = feature.geometry().centroid();
  // Return a new Feature, copying properties from the old Feature.
  return ee.Feature(centroid).copyProperties(feature, keepProperties);
};

// Map the centroid getting function over the features.
var centroids = sheds.map(getCentroid);

// Display the results.
Map.addLayer(centroids, {color: 'FF0000'}, 'centroids');

Python सेटअप

Python API के बारे में जानकारी पाने और इंटरैक्टिव डेवलपमेंट के लिए geemap का इस्तेमाल करने के लिए, Python एनवायरमेंट पेज देखें.

import ee
import geemap.core as geemap

Colab (Python)

# This function creates a new feature from the centroid of the geometry.
def get_centroid(feature):
  # Keep this list of properties.
  keep_properties = ['name', 'huc6', 'tnmid', 'areasqkm']
  # Get the centroid of the feature's geometry.
  centroid = feature.geometry().centroid()
  # Return a new Feature, copying properties from the old Feature.
  return ee.Feature(centroid).copyProperties(feature, keep_properties)

# Map the centroid getting function over the features.
centroids = sheds.map(get_centroid)

# Display the results.
m = geemap.Map()
m.set_center(-96.25, 40, 4)
m.add_layer(centroids, {'color': 'FF0000'}, 'centroids')
m

ध्यान दें कि नए कलेक्शन की सुविधाओं में, प्रॉपर्टी का सिर्फ़ एक सबसेट ही प्रोपैगेट किया जाता है.