當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python ArcGIS calculate_density用法及代碼示例

本文簡要介紹 python 語言中 arcgis.raster.analytics.calculate_density 的用法。

用法:

arcgis.raster.analytics.calculate_density(input_point_or_line_features, count_field=None, search_distance=None, output_area_units=None, output_cell_size=None, output_name=None, context=None, input_barriers=None, *, gis=None, future=False, **kwargs)

返回:

ra_calculate_density.png

密度分析采用已知數量的某種現象,並通過將這些數量分布在Map上來創建密度圖。例如,您可以使用此函數來顯示雷擊或龍卷風的集中度、醫療保健設施的使用情況和人口密度。

此函數通過在Map上傳播已知數量的某些現象(表示為點或線的屬性)從點或線特征創建密度圖。結果是一層從最不密集到最密集的區域。

對於點輸入,每個點應表示某個事件或事件的位置,結果層表示每單位麵積的事件計數。新位置中較大的密度值意味著該位置附近有更多點。在許多情況下,結果層可以解釋為未來事件的風險麵。例如,如果輸入點表示雷擊的位置,則結果圖層可以解釋為未來雷擊的風險麵。

對於線輸入,線密度表麵表示每個位置附近的線的總量。計算密度值的單位是line-per-unit區域的長度。例如,如果線條代表河流,則結果圖層將代表搜索半徑內河流的總長度。該結果可用於確定適合放牧動物的區域。

此工具的其他用例包括:

  • 創建犯罪密度圖,以幫助警察部門將資源正確分配到犯罪率高的地區。

  • 計算縣內醫院的密度。結果層將顯示醫院可達性高和低的區域,這些信息可用於決定應該在哪裏建造新醫院。

  • 根據森林火災的曆史位置識別森林火災高風險區域。

  • 定位遠離主要高速公路的社區,以便規劃應該在哪裏建造新道路。

Parameter

Description

input_point_or_line_features

所需要素圖層 - 將用於計算密度圖層的輸入點或線圖層。

count_field

可選字符串 - 計數字段

提供一個字段,指定每個位置的事件數量。例如,如果您有代表城市的點,則可以使用代表城市人口的字段作為計數字段,生成的人口密度圖層將計算人口較多的城市附近較大的人口密度。

如果使用默認選項“無”,則假定每個位置代表一個計數。

例子:

“myCountField”

search_distance

可選字典,輸入距離,指定在計算密度值時搜索點或線要素的距離。

例如,如果您提供 10,000 米的搜索距離,則輸出圖層中任何位置的密度都是根據該位置 10,000 米範圍內的要素計算的。在 10,000 米範圍內沒有任何事件的任何位置都將收到零密度值。如果未提供距離,則將根據輸入要素的位置和計數字段中的值計算默認值(如果提供了計數字段)。

例子:

{“distance”:”60”,”units”:”Meters”}

output_area_units

可選字符串 - 輸出麵積單位 指定輸出麵積單位。密度是計數除以麵積,此參數指定密度計算中的麵積單位。可用的麵積單位是SQUARE_MILES 和SQUARE_KILOMETERS。

例子:

“SQUARE_KILOMETERS”

output_cell_size

可選 dict - 輸出像元大小 輸入輸出柵格的像元大小和單位。

例子:

{distance”:”60”,”units”:”Meters”}

output_name

可選的。如果未提供,則由該方法創建影像服務並將其用作輸出柵格。您可以從 GIS 中傳入現有的影像服務項目來使用它。或者,您可以傳入應通過此方法創建的輸出圖像服務的名稱,以用作工具的輸出。如果該名稱的服務已經存在,則會引發 RuntimeError

context

context 包含影響任務執行的其他設置。

context 參數覆蓋通過arcgis.env 參數設置的值

此函數具有以下設置:

  • Extent(範圍):定義分析區域的邊界框。

    例子:

    {“extent”: {“xmin”: -122.68, “ymin”: 45.53, “xmax”: -122.45, “ymax”: 45.6, “spatialReference”: {“wkid”: 4326}}}

  • 輸出空間參考 (outSR):輸出柵格將投影到輸出空間參考中。

    例子:

    {“outSR”: {spatial reference}}

  • 捕捉柵格 (snapRaster):輸出柵格的像元將與指定的捕捉柵格對齊。

    例子:

    {‘snapRaster’: {‘url’: ‘<image_service_url>’}}

  • 掩碼(mask):在操作中隻考慮落在分析掩碼內的單元格。

    例子:

    {“mask”: {“url”: “<image_service_url>”}}

  • 像元大小(cellSize):輸出柵格將具有由像元大小指定的分辨率。

    例子:

    {‘cellSize’: 11} or {‘cellSize’: {‘url’: <image_service_url>}} or {‘cellSize’: ‘MaxOfIn’}

  • 重采樣方法(resamplingMethod):輸出柵格將被重采樣到指定的方法。支持的值是:雙線性、最近、三次。

    例子:

    {‘resamplingMethod’: “Nearest”}

input_barriers

可選的。定義障礙的數據集。障礙可以是折線或麵要素的要素圖層。

ArcGIS Image Server 10.9 及更高版本中可用的參數。

gis

可選的 GIS 對象。如果未指定,則使用當前活動的連接。

future

僅關鍵字參數。可選的布爾值。如果為 True,則結果將是一個 GPJob 對象,並且結果將異步返回。

folder

僅關鍵字參數。可選的 str 或 dict。使用給定的文件夾名稱在門戶中創建一個文件夾(如果不存在),並將輸出保留在此文件夾中。 create_folder() 返回的字典也可以作為輸入傳入。

例子:

{‘username’: ‘user1’,
‘id’: ‘6a3b77c187514ef7873ba73338cf1af8’,
‘title’: ‘trial’}

tiles_only

僅關鍵字參數。可選的布爾值。在ArcGIS Online 中,此函數的默認輸出影像服務將是平鋪影像圖層。

要在 ArcGIS Online 上創建動態影像圖層作為輸出,請將 tiles_only 參數設置為 False。

函數將不支持ArcGIS Enterprise 上的tiles_only 參數,默認情況下會生成動態影像圖層。

output_raster:影像圖層項目

例子:

# Usage Example 1: Creates a density map within a specified distance from said location.

sample_lyr = gis.content.search("sample_lyr", item_type="Feature Layer Collection")[0].layers[0]

calculate_density_op = calculate_density(input_point_or_line_features=sample_lyr,
                                        search_distance={"distance":"10","units":"Meters"},
                                        gis=gis)

# To view output inline, run:
calculate_density_op.layers[0]

相關用法


注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 arcgis.raster.analytics.calculate_density。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。