<jupyter_start><jupyter_text>ArcGIS Online の解析機能を使用する 使用するデータ* 栃木県のダム諸元表: https://www.geospatial.jp/ckan/dataset/09000-103  データを確認する<jupyter_code># pandas を使用して csv ファイルの読み込み、中身を表示する
import pandas as pd
dam_csv = pd.read_csv('https://www.geospatial.jp/ckan/dataset/d6a87e42-6e86-449e-9d76-1e40319bb99b/resource/b5d633c8-f2c8-4baa-88a9-fcf1872dcfcd/download/724522014tochiginodamsyogen04033.csv',encoding="SHIFT-JIS")
dam_csv<jupyter_output><empty_output><jupyter_text>ArcGIS Online にログイン<jupyter_code># ArcGIS Online に開発者アカウントでサインインする
from arcgis.gis import GIS
import getpass

develoersUser = 'あなたのユーザー名'
develoersPass = getpass.getpass('ユーザー['+ develoersUser + ']のパスワード=')

gis = GIS("http://"+ develoersUser +".maps.arcgis.com/",develoersUser,develoersPass)
user = gis.users.get(develoersUser)
user<jupyter_output>ユーザー[ejpythondev]のパスワード=········<jupyter_text>ArcGIS Online にホスト フィーチャ サービスを公開する<jupyter_code># ArcGIS Online に CSV ファイルをアイテムとして追加する
csv_file = 'https://www.geospatial.jp/ckan/dataset/d6a87e42-6e86-449e-9d76-1e40319bb99b/resource/b5d633c8-f2c8-4baa-88a9-fcf1872dcfcd/download/724522014tochiginodamsyogen04033.csv'
csv_item = gis.content.add({}, csv_file)
display(csv_item)
# CSV にある緯度経度の情報を使用して、追加したアイテムからホスト フィーチャ サービス（ダムのポイント）を公開する
csv_lyr = csv_item.publish({'name':'dam','locationType':'coordinates', 'latitudeFieldName':'緯度', 'longitudeFieldName':'経度'})
display(csv_lyr)
# マップにホスト フィーチャ サービス追加して表示する
map = gis.map('栃木県')
map.add_layer(csv_lyr)
map<jupyter_output><empty_output><jupyter_text>ArcGIS Online の集水域解析を実行する<jupyter_code># ダムのポイントのホスト フィーチャ サービスを引数にして集水域の作成ツール（create_watersheds）を実行する
from arcgis.features import analysis
watershedsResult =  analysis.create_watersheds(csv_lyr, output_name='watersheds_result')
watershedsResult
# 解析結果の集水域ポリゴンをマップに追加して表示する
map.add_layer(watershedsResult)<jupyter_output><empty_output><jupyter_text>ArcGIS Online の下流解析を実行する<jupyter_code># 集水域の解析結果で出力された調整された入力ポイントを引数にして下流解析ツール（trace_downstream）を実行する
input_layer = watershedsResult.layers[0]
downstreamResult =  analysis.trace_downstream(input_layer, output_name='downstream_result')
downstreamResult
# 解析結果の河川ラインをマップに追加して表示する
map.add_layer(downstreamResult)<jupyter_output><empty_output><jupyter_text>Web マップとして保存する<jupyter_code># Web マップのタイトルなどを定義する
webMap_properties = {'title':'栃木県のダム・河川',
                     'snippet':'Python API で作成した栃木県のダム・河川 Web マップ',
                     'tags':'栃木県, ダム, 河川',
                     'extent':downstreamResult.extent
                     }
# Web マップを保存する
webMap = map.save(item_properties=webMap_properties)
webMap<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.11388995767602925, 'fraction_numerical': 0.042708734128510964, 'mean_word_length': 7.637873754152824, 'pattern_counts': {'":': 0, '<': 24, '<?xml version=': 0, '>': 24, 'https://': 3, 'lorem ipsum': 0, 'www.': 3, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '6', 'dir': 'jupyter-structured-clean-dedup', 'id': '667904', 'license': 'Apache-2.0', 'n_tokens_mistral': 1431, 'n_tokens_neox': 1330, 'n_words': 118, 'path': 'samples/5.analysis.ipynb', 'repo_name': 'EsriJapan/arcgis-samples-python-api', 'size': '2599'}