てつふみはブログ

プログラミングなどの失敗記録

【arcpy】断面図の書き方、とエラー

ArcGISのarcpyで断面線を作成するには stack_Profile()を使用する。

このジオプロツールを使用すれば、断面の標高と始点からの距離をテーブルに出すこともできるし、断面図を作成できる(※1)。必要なデータはDEMと断面線だけ。

もちろん、複数の線にも対応している。テーブルにはIDフィールドもあり、線ごとのIDが保存される。複数の断面図データをいっぺんに取ることも可能。

 

<<注意点>>

ただし、注意点が三つある。

1. 断面線がDEMの外から始まっている場合、出力テーブルの距離は始点ではなく、DEMに断面線が入ってきた所からの距離になる。

2. 入力データのDEMが複数にまたがる場合、統合(※2)した方がいい。複数のDEMにまたがる断面線があると、断面図データはDEMごとに作成される。そのため【注意点1】が原因で、距離の起点が複数存在することになる。よってめちゃくちゃなグラフとなる。

3. 出力テーブル名を"table"にすると、失敗する。どう失敗するのかというと、全部の断面図データを取得できなくなってしまう。まるまるゴソッと無いIDもあるし、一部のデータが抜けることもある。なぜかは分からない。

 

そこだけ注意して使わなきゃいけない。

 

 

※1 GUI上では断面図を作成できるけど、arcpyになるとうまくいっていない(研究中)。とりあえず、matplotlibを使用している。matplotlibは非常に優秀!!

ここら辺を参考にした↓

bicycle1885.hatenablog.com

seesaawiki.jp

 

※2 統合にはジオプロツール  “新規ラスタにモザイク”  が使える。

arcpy.MosaicToNewRaster_management

desktop.arcgis.com