概要
ArcMap の標準機能を用いて、現在設定しているデータ ドリブン ページを PDF ファイルへエクスポートすることは可能ですが、他のフォーマットには出力することができません。しかし、ArcPy サイト パッケージを利用することで、データ ドリブン ページを様々なフォーマットへエクスポートがすることが可能となります。この FAQ では、例としてデータ ドリブン ページを PNG 形式と GeoTIFF 形式へエクスポートするサンプル コードをご紹介します。
サンプル コード 1
位置情報を持たないラスターを出力する場合のサンプル コードです。出力されたラスターのファイル名はページ番号になります。
#coding:cp932
#Description: データ ドリブン ページを PNG ファイルへエクスポートします。
#Author: ESRIジャパン
#ArcPy サイト パッケージのインポート
import arcpy,os
#現在開いているマップ ドキュメントの取得
mxd = arcpy.mapping.MapDocument("CURRENT")
#すべてのページを PNG ファイルへエクスポート
for pageNum in range(1, mxd.dataDrivenPages.pageCount + 1):
mxd.dataDrivenPages.currentPageID = pageNum
arcpy.mapping.ExportToPNG(mxd, r"C:TempParcelAtlas_Page" + os.sep + str(pageNum) + ".png")
del mxd
サンプル コード 2
位置情報をもつラスターを出力する場合の例です。この場合、指定したデータ フレーム内のマップが出力されます。
こちらの例では、GeoTIFF として出力しています。ファイル名は、データ ドリブン ページで設定した名前フィールドとなります。
#coding:cp932
#Description: データ ドリブン ページを GeoTIFF ファイルへエクスポートします。
#Author: ESRIジャパン
#ArcPy サイト パッケージのインポート
import arcpy,os
#現在開いているマップ ドキュメントの取得
mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd)[0]
#すべてのページを TIFF ファイルへエクスポート
for pageNum in range(1, mxd.dataDrivenPages.pageCount + 1):
mxd.dataDrivenPages.currentPageID = pageNum
row = mxd.dataDrivenPages.pageRow
pageNameField = row.getValue(mxd.dataDrivenPages.pageNameField.name)
arcpy.mapping.ExportToTIFF(mxd, r"C:gis_workout" + os.sep + pageNameField + ".tif",df,df_export_width=1600,df_export_height=1200, world_file=False, geoTIFF_tags=True)
del mxd
参考情報
このナレッジはお役に立ちましたか?
フィードバックをいただきありがとうございます!