ee.FeatureCollection.kriging

แสดงผลลัพธ์ของการสุ่มตัวอย่างตัวประมาณค่า Kriging ที่แต่ละพิกเซล

การใช้งานการคืนสินค้า
FeatureCollection.kriging(propertyName, shape, range, sill, nugget, maxDistance, reducer)รูปภาพ
อาร์กิวเมนต์ประเภทรายละเอียด
ดังนี้ collectionFeatureCollectionการรวบรวมฟีเจอร์เพื่อใช้เป็นข้อมูลต้นฉบับสําหรับการประมาณ
propertyNameสตริงพร็อพเพอร์ตี้ที่จะประมาณ (ต้องเป็นตัวเลข)
shapeสตริงรูปร่างของ Semivariogram (อย่างใดอย่างหนึ่งจาก {exponential, gaussian, spherical})
rangeทศนิยมช่วงของ Semivariogram ในหน่วยเมตร
sillทศนิยมค่าสูงสุดของฟังก์ชันกึ่งแวริโอแกรม
nuggetทศนิยมค่าความแปรปรวนครึ่งหนึ่งของจุดเริ่มต้น
maxDistanceลอย ค่าเริ่มต้น: nullรัศมีที่กำหนดว่าฟีเจอร์ใดจะรวมอยู่ในการคำนวณของแต่ละพิกเซลเป็นเมตร ค่าเริ่มต้นคือช่วงของเซมิแวริโอแกรม
reducerReducer, ค่าเริ่มต้น: nullตัวลดที่ใช้เพื่อยุบค่า "propertyName" ของจุดที่ซ้อนทับกันให้เป็นค่าเดียว

ตัวอย่าง

โปรแกรมแก้ไขโค้ด (JavaScript)

/**
 * This example generates an interpolated surface using kriging from a
 * FeatureCollection of random points that simulates a table of air temperature
 * at ocean weather buoys.
 */

// Average air temperature at 2m height for June, 2020.
var img = ee.Image('ECMWF/ERA5/MONTHLY/202006')
              .select(['mean_2m_air_temperature'], ['tmean']);

// Region of interest: South Pacific Ocean.
var roi = ee.Geometry.Polygon(
        [[[-156.053, -16.240],
          [-156.053, -44.968],
          [-118.633, -44.968],
          [-118.633, -16.240]]], null, false);

// Sample the mean June 2020 temperature surface at random points in the ROI.
var tmeanFc = img.sample(
  {region: roi, scale: 25000, numPixels: 50, geometries: true}); //250

// Generate an interpolated surface from the points using kriging; parameters
// are set according to interpretation of an unshown semivariogram. See section
// 2.1 of https://doi.org/10.14214/sf.369 for information on semivariograms.
var tmeanImg = tmeanFc.kriging({
  propertyName: 'tmean',
  shape: 'gaussian',
  range: 2.8e6,
  sill: 164,
  nugget: 0.05,
  maxDistance: 1.8e6,
  reducer: ee.Reducer.mean()
});

// Display the results on the map.
Map.setCenter(-137.47, -30.47, 3);
Map.addLayer(tmeanImg, {min: 279, max: 300}, 'Temperature (K)');

การตั้งค่า Python

ดูข้อมูลเกี่ยวกับ Python API และการใช้ geemap เพื่อการพัฒนาแบบอินเทอร์แอกทีฟได้ที่หน้า สภาพแวดล้อม Python

import ee
import geemap.core as geemap

Colab (Python)

# This example generates an interpolated surface using kriging from a
# FeatureCollection of random points that simulates a table of air temperature
# at ocean weather buoys.

# Average air temperature at 2m height for June, 2020.
img = ee.Image('ECMWF/ERA5/MONTHLY/202006').select(
    ['mean_2m_air_temperature'], ['tmean']
)

# Region of interest: South Pacific Ocean.
roi = ee.Geometry.Polygon(
    [[
        [-156.053, -16.240],
        [-156.053, -44.968],
        [-118.633, -44.968],
        [-118.633, -16.240],
    ]],
    None,
    False,
)

# Sample the mean June 2020 temperature surface at random points in the ROI.
tmean_fc = img.sample(region=roi, scale=25000, numPixels=50, geometries=True)

# Generate an interpolated surface from the points using kriging parameters
# are set according to interpretation of an unshown semivariogram. See section
# 2.1 of https://doi.org/10.14214/sf.369 for information on semivariograms.
tmean_img = tmean_fc.kriging(
    propertyName='tmean',
    shape='gaussian',
    range=2.8e6,
    sill=164,
    nugget=0.05,
    maxDistance=1.8e6,
    reducer=ee.Reducer.mean(),
)

# Display the results on the map.
m = geemap.Map()
m.set_center(-137.47, -30.47, 3)
m.add_layer(
    tmean_img,
    {'min': 279, 'max': 300, 'min': 279, 'max': 300},
    'Temperature (K)',
)
m