Сводка
Создает растровый слой из многомерного набора растровых данных или многомерного растрового слоя путем разрезания данных по определенным переменным и измерениям.
Использование
Этот инструмент создает многомерный растровый слой из многомерного растра или набора данных мозаики путем извлечения поднабора переменных. Например, у вас есть набор данных мозаики, который содержит данные о среднемесячных уровнях осадков за 30 лет, и вы хотите извлечь данные за каждый январь, чтобы увидеть, как изменялся уровень осадков в этом месяце.
Поддерживаются следующие многомерные наборы растровых данных: Облачный растр (CRF), многомерные наборы данных мозаики или многомерные растровые слои, созданные из файлов netCDF, GRIB или HDF.
Этот инструмент создает временный слой, который не сохраняется, пока не будет сохранен на диск.
Параметр Определение измерения используется для создания срезов измерений с использованием интервала, значения или диапазона значений. Например, если у вас есть данные о солености океана за 10 лет, собираемые ежемесячно до глубины 500 метров через каждые 2 метра, вы можете использовать различные опции определения измерения для следующих сценариев:
- Извлечение данных о солености воды в январе за 10-летний период. Выберите По значениям, установите для Размер StdTime, а для Значения выберите Январь.
- Срез данных о солености воды на глубине от 0 до 150 метров. Выберите По диапазону, для Измерение выберите StdZ, Минимальное значение задайте как -150, а Максимальное значение как 0.
- Извлечение данных о солености воды в первую декаду января в течение 10-летнего периода. Выберите По итерации, для Измерение выберите StdTime, для Начало первой итерации и Конец первой итерации задайте соответствующие начало и окончание периода итерации, для Шаг установите 1, для Единицы выберите Годы.
Чтобы создать немногомерный слой, содержащий данные из одного среза многомерного растра, выберите По значениям для параметра Определение измерения, выберите значение одного измерения и отметьте параметр Безразмерный .
Синтаксис
arcpy.md.MakeMultidimensionalRasterLayer(in_multidimensional_raster, out_multidimensional_raster_layer, {variables}, {dimension_def}, {dimension_ranges}, {dimension_values}, {dimension}, {start_of_first_iteration}, {end_of_first_iteration}, {iteration_step}, {iteration_unit}, {template}, {dimensionless})
Parameter | Объяснение | Тип данных |
in_multidimensional_raster | Входной многомерный набор растровых данных. Поддерживаются следующие входные данные: файлы netCDF, GRIB, HDF и CRF, наборы многомерных данных мозаики, многомерные сервисы изображений, URL-адреса OPeNDAP и многомерные растровые слои. | Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; File |
out_multidimensional_raster_layer | Выходной многомерный растровый слой | Raster Layer |
variables [variables,...] (Дополнительный) | Переменные, которые будут включены в выходной многомерный растровый слой. Если переменная не задана, будет использована первая переменная. | String |
dimension_def (Дополнительный) | Определяет метод, который будет использоваться для среза измерения.
| String |
dimension_ranges [dimension_ranges,...] (Дополнительный) | Диапазон или список диапазонов для указанного измерения. Создает срезы данных на основе имени измерения и минимального и максимального значений диапазона. Этот параметр необходим, если для параметра dimension_def задано BY_RANGES. | Value Table |
dimension_values [dimension_values,...] (Дополнительный) | Список значений для указанного измерения. Этот параметр необходим, если для параметра dimension_def задано BY_VALUE. | Value Table |
dimension (Дополнительный) | Измерение, по которому будут нарезаться переменные. Этот параметр необходим, если для параметра dimension_def задано BY_ITERATION. | String |
start_of_first_iteration (Дополнительный) | Начало первого интервала. Этот интервал используется для итерации набора данных. Этот параметр необходим, если параметр dimension_def установлен на BY_ITERATION. | String |
end_of_first_iteration (Дополнительный) | Окончание первого интервала. Этот интервал используется для итерации набора данных. Этот параметр необходим, если параметр dimension_def установлен на BY_ITERATION. | String |
iteration_step (Дополнительный) | Частота, с которой будут сделаны срезы данных. Этот параметр необходим, если параметр dimension_def установлен на BY_ITERATION. | Double |
iteration_unit (Дополнительный) | Задает единицу итерации. Этот параметр необходим, если для параметра dimension_def задано BY_ITERATION, а для параметра dimension - StdTime.
| String |
template (Дополнительный) | Экстент (ограничивающий прямоугольник) слоя. Выберите необходимую опцию Экстент для слоя.
| Extent |
dimensionless (Дополнительный) | Устанавливает, будут ли в слое содержаться значения измерения. Этот параметр доступен только в том случае, если для создания слоя выбран один срез.
| Boolean |
Пример кода
Извлекает поднабор переменных из многомерного растра, используя метод BY_RANGES.
# Import system modules
import arcpy
# Execute
arcpy.md.MakeMultidimensionalRasterLayer(
"C:\data\Ocean_Data.crf", "C:\data\Salinity_MultidimLayer.crf",
"salinity", "BY_RANGES", "StdZ -500 -100",
"120.084279939743 0.914964278021376 139.524470909773 21.1231086159414")
Извлекает из многомерного растра переменную температуры воды для определенных значений глубины, используя метод BY_VALUE.
# Import system modules
import arcpy
# Define input parameters
in_multidimensional_raster = r"C:\data\MD_Ocean_data.crf"
out_multidimensional_raster_layer = r"C:\data\Temp_slice.crf"
variables = "water_temp"
dimension_def = "BY_VALUE"
dimension_values = "StdZ -50;StdZ -100"
template = "120.084279939743 0.914964278021376 139.524470909773 21.1231086159414"
#Execute
arcpy.md.MakeMultidimensionalRasterLayer(
in_multidimensional_raster, out_multidimensional_raster_layer, variables,
dimension_def, dimension_values, template)
Извлекает из многомерного растра переменную солености, используя метод BY_ITERATION.
# Import system modules
import arcpy
# Set local variables
in_multidimensional_raster = r"C:\data\MD_Ocean_data.crf"
out_multidimensional_raster_layer = r"C:\data\salinity_slice.crf"
variables = "salinity"
dimension_def = "BY_ITERATION"
dimension = "StdTime"
start_of_first_iteration = "2009-01-01"
end_of_first_iteration = "2009-01-10"
iteration_step = "1"
iteration_unit = "YEARS"
template = "120.084279939743 0.914964278021376 139.524470909773 21.1231086159414"
#Execute
arcpy.md.MakeMultidimensionalRasterLayer(
in_multidimensional_raster, out_multidimensional_raster_layer,
variables, dimension_def, dimension, start_of_first_iteration,
end_of_first_iteration, iteration_step, iteration_unit, template)
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да