線密度(Line Density) (Spatial Analyst)
図
使用法
-
近傍内にあるラインの一部だけが、密度の計算時に考慮されます。特定セルの近傍内にラインがない場合、そのセルには NoData が割り当てられます。
-
[検索範囲] パラメータの値が大きいほど、単純化された密度のラスタが作成されます。値が小さいほど、詳細を示すラスタが作成されます。
-
面積単位の係数単位がフィーチャ(ライン セクションの長さ)に比べて小さい場合、出力値が小さくなる可能性があります。大きな値を得るには、大きな単位の面積単位の係数(平方キロメートル対平方メートルなど)を使用します。
-
出力ラスタの値は、必ず浮動小数になります。
構文
パラメータ | 説明 | データ タイプ |
in_polyline_features |
密度を計算する入力ライン フィーチャ。 | Feature Layer |
population_field |
各ポリラインの人口値を示す数値フィールド(ラインを数える回数)。 population フィールドの値は、整数値または浮動小数点値です。 フィールドのオプションとデフォルトの動作は以下のとおりです。
| Field |
cell_size (オプション) |
出力ラスタ データセットのセル サイズ。 環境設定で特定の値が指定されている場合、その値を使用します。設定されていない場合、セル サイズは、出力空間参照において、出力の範囲の幅または高さ(どちらか短い方)を 250 で割った値になります。 | Analysis Cell Size |
search_radius (オプション) |
密度の計算対象となる検索範囲。単位は、出力空間参照の投影法の距離単位に基づきます。 たとえば、単位がメートルの場合、1 マイル近傍内のフィーチャをすべて含めるには、検索範囲を 1609.344 に設定します(1 マイル = 1609.344 メートル)。 デフォルトは、出力空間参照において、出力範囲の幅または高さ(どちらか短い方)を 30 で割った値になります。 | Double |
area_unit_scale_factor (オプション) |
出力密度値の望ましい面積単位。 デフォルトの単位は、出力空間参照の投影法の距離単位に基づいて選択されます。密度の出力を変換する場合は、これを適切な単位に変更できます。線密度の値は長さと面積の両方の単位を変換します。 たとえば、入力単位がメートルの場合、デフォルトの出力の面積密度単位はポイント フィーチャでは平方キロメートル、ポリライン フィーチャではキロメートル/平方キロメートルになります。 入力フィーチャの単位に基づくデフォルトの密度単位は以下のとおりです。
| String |
戻り値
名前 | 説明 | データ タイプ |
out_raster |
出力線密度ラスタ。 常に浮動小数点ラスタです。 | Raster |
コードのサンプル
次の例では、ポリライン シェープ ファイルの長さフィールドに対する密度ラスタを計算しています。
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outLDens = LineDensity("roads.shp", "LENGTH", 45, 1000, "SQUARE_MILES")
outLDens.save("C:/sapyexamples/output/ldensout")
次の例では、ポリライン シェープ ファイルの長さフィールドに対する密度ラスタを計算しています。
# Name: LineDensity_Ex_02.py
# Description: Calculates a magnitude per unit area from polyline features
# that fall within a radius around each cell.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inPolylineFeatures = "roads.shp"
populationField = "length"
cellSize = 120
searchRadius = 1500
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute LineDensity
outLineDensity = LineDensity(inPolylineFeatures, populationField, cellSize,
searchRadius, "SQUARE_MILES")
# Save the output
outLineDensity.save("C:/sapyexamples/output/linedensity")