ee.Filter.calendarRange

فیلتری را برمی‌گرداند که اگر مُهر زمان شیء در محدوده مشخص‌شده فیلد تقویم قرار گیرد، عبور می‌کند. ‫month،‏ day_of_year،‏ day_of_month، و day_of_week مبتنی بر ۱ هستند. فرض می‌شود زمان‌ها به وقت UTC باشد. فرض بر این است که هفته‌ها از دوشنبه به‌عنوان روز ۱ شروع می‌شود.

اگر end < start باشد، این مورد برای value >= start یا value <= end آزمایش می‌شود تا امکان پیچیدن فراهم شود.

کاربردبازگشتی‌ها
ee.Filter.calendarRange(start, end, field)فیلتر کردن
متغیر مستقلنوعجزئیات
startعدد صحیحشروع فیلد تقویم موردنظر، شامل این مقدار.
endعدد صحیح، پیش‌فرض: تهیپایان فیلد تقویم موردنظر، شامل. به‌طور پیش‌فرض همان مقدار شروع است.
fieldرشته، پیش‌فرض: «day_of_year»فیلد تقویم برای فیلتر کردن. گزینه‌ها عبارت‌اند از: `year` (سال)، `month` (ماه)، `hour` (ساعت)، `minute` (دقیقه)، `day_of_year` (روز سال)، `day_of_month` (روز ماه)، و `day_of_week` (روز هفته).

مثال‌ها

ویرایشگر کد (جاوا اسکریپت)

// A Sentinel-2 surface reflectance image collection intersecting the peak of
// Mount Shasta, California, USA.
var ic = ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED')
             .filterBounds(ee.Geometry.Point(-122.196, 41.411));

print('Images for a month range (June-August)',
      ic.filter(ee.Filter.calendarRange(6, 8, 'month')));

print('A start value greater than end value is valid (Dec-Feb)',
      ic.filter(ee.Filter.calendarRange(12, 2, 'month')));

// This example uses the 'year' field value. Note that ee.Filter.date is the
// preferred method when filtering by whole years, as it is much faster.
print('Images for a year range (2020-2021)',
      ic.filter(ee.Filter.calendarRange(2020, 2021, 'year')));

// This example uses the 'day_of_year' field value. Note that
// ee.Filter.dayOfYear is the preferred method for filtering by DOY.
// The ee.Date.getRelative function is used to identify DOY from an ee.Date
// object for a representative year. Be mindful of leap years when filtering
// by DOY.
var startDoy = ee.Date('2000-06-01').getRelative('day', 'year');
var endDoy = ee.Date('2000-06-15').getRelative('day', 'year');
print('start DOY =', startDoy,
      'end DOY =', endDoy,
      'Images for a day-of-year range',
      ic.filter(ee.Filter.calendarRange(startDoy, endDoy, 'day_of_year')));

راه‌اندازی Python

برای اطلاعات درباره Python API و استفاده از geemap برای توسعه تعاملی، به صفحه محیط Python مراجعه کنید.

import ee
import geemap.core as geemap

Colab (Python)

# A Sentinel-2 surface reflectance image collection intersecting the peak of
# Mount Shasta, California, USA.
ic = ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED').filterBounds(
    ee.Geometry.Point(-122.196, 41.411))

display('Images for a month range (June-August):',
        ic.filter(ee.Filter.calendarRange(6, 8, 'month')))

display('A start value greater than end value is valid (Dec-Feb):',
        ic.filter(ee.Filter.calendarRange(12, 2, 'month')).size())

# This example uses the 'year' field value. Note that ee.Filter.date is the
# preferred method when filtering by whole years, as it is much faster.
display('Images for a year range (2020-2021):',
        ic.filter(ee.Filter.calendarRange(2020, 2021, 'year')).size())

# This example uses the 'day_of_year' field value. Note that
# ee.Filter.dayOfYear is the preferred method for filtering by DOY.
# The ee.Date.getRelative function is used to identify DOY from an ee.Date
# object for a representative year. Be mindful of leap years when filtering
# by DOY.
start_doy = ee.Date('2000-06-01').getRelative('day', 'year')
end_doy = ee.Date('2000-06-15').getRelative('day', 'year')
display('start DOY =', start_doy, 'end DOY =', end_doy)
display(
    'Images for a day-of-year range:',
    ic.filter(ee.Filter.calendarRange(start_doy, end_doy, 'day_of_year'))
)