概要
定義された変数とディメンションに沿ってデータをスライスすることで、多次元ラスター データセットまたは多次元ラスター レイヤーからラスター レイヤーを作成します。
使用法
このツールは、多次元ラスターまたはモザイク データセットから、変数のサブセットを抽出することで、多次元ラスター レイヤーを作成します。たとえば、30 年間の毎月の降水量データを含むモザイク データセットがある場合、各年の 1 月のデータだけを抽出して、その月の降水量の変化を調べることができます。
サポートされている多次元ラスター データセットには、netCDF、GRIB、HDF、Esri の CRF などがあります。多次元モザイク データセットもサポートされています。
このツールは一時レイヤーを生成します。ディスクに保存しなければ、このレイヤーは保持されません。
[ディメンション定義] パラメーターでは、間隔、値、または値の範囲を使用してディメンションをスライスできます。たとえば、毎月 2 メートル間隔で深度 500 メートルまで収集されている 10 年間の海洋塩分データがある場合、次のシナリオごとに異なるディメンション定義オプションを使用できます。
- 10 年間のそれぞれ 1 月の塩分データを抽出します。[値を使用] を選択して、[ディメンション] を [StdTime] に設定し、[値] を [1 月] に設定します。
- 塩分データを 0 ~ 150 メートルの深度範囲でスライスします。[範囲を使用] を選択して、[ディメンション] を [StdZ] に設定し、[最小値] を -150 に設定し、[最大値] を 0 に設定します。
- 10 年間の 1 月ごとの最初の 10 日間の塩分データを抽出します。[繰り返しを使用] を選択して、[ディメンション] を [StdTime] に設定し、[最初の繰り返しを開始] および [最初の繰り返しを終了] を該当する繰り返し期間の開始時点と終了時点に設定し、[ステップ] を 1 に設定し、[単位] を [年] に設定します。
多次元ラスターの 1 つのスライスからのデータを含む非多次元レイヤーを作成するには、[ディメンション定義] パラメーターの [値を使用] を選択し、1 つのディメンション値を選択して [ディメンションなし] パラメーターを確認します。
構文
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})
パラメーター | 説明 | データ タイプ |
in_multidimensional_raster | 入力多次元ラスター データセット。 サポートされている入力には、netCDF、GRIB、HDF または CRF ファイル、多次元モザイク データセット、多次元イメージ サービス、OPeNDAP URL、多次元ラスター レイヤーなどがあります。 | 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 (オプション) | レイヤーにディメンション値が含まれるかどうかを指定します。このパラメーターは、レイヤーの作成に 1 つのスライスが選択されている場合にのみ有効になります。
| Boolean |
コードのサンプル
BY_RANGES 方法を使用して多次元ラスターから変数のサブセットを抽出します。
# Import system modules
import arcpy
# Execute
MakeMultidim = MakeMultidimensionalRasterLayer("C:\data\Ocean_Data.crf", "salinity", "BY_RANGES", "StdZ -500 -100", "120.084279939743 0.914964278021376 139.524470909773 21.1231086159414")
# Save Output
MakeMultidim.save("C:\data\Salinity_MultidimLayer.crf")
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)
環境
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい