DOC
|
2023年11月17日に「Python を使って ArcGIS のワークフローを効率化!」ウェビナーを開催しました。多数の方にご参加いただきありがとうございました。本ウェビナーでは ArcGIS の処理を実行できる Pythonライブラリである ArcGIS API for Python や ArcPy の製品概要や使い方などを、デモを交えてご紹介しました。 ウェビナーで使用した資料を ESRIジャパンの GitHub に公開していますので、当日ご参加できなかった方はぜひダウンロードしてご覧ください。 ウェビナーでは ArcGIS API for Python と ArcPy を組み合わせて使用したデモを実施しました。本記事でも一部をご紹介します。デモで使用したノートブックも公開していますので、処理の内容についてはノートブックも併せてご覧ください オーバーレイ解析 1km メッシュデータと交通事故データを使用したオーバーレイ解析を ArcGIS API for Pythonと ArcPy の両方で実行、比較したデモをご覧いただきました。 どちらを使っても解析が可能ですが、ArcGIS API for Python では、ArcGIS Online の解析ツールを使用するため、クレジットを消費し、結果は ArcGIS Online 上に保存されます。一方で ArcPy では ArcGIS Pro のジオプロセシング ツールを使用するためクレジットは必要とせず、結果はジオデータベースなどローカルに保存されるといった特徴があることをご紹介しました。 ArcGIS Online へアップロード オーバーレイ解析した結果を ArcGIS Online へアップロードし、ArcGIS API for Python と ArcPy で比較したデモをご覧いただきました。 どちらを使用しても ArcGIS Online へアップロードすることができますが、ArcPy ではサービス定義ファイルを作成した後アップロードするためコード量が多くなります。一方で ArcGIS API for Python では表形式に変換した後アップロードし、ArcPy と比較するとコード量が少なくて済むといった特徴をご紹介しました。 本ウェビナーでは ArcGIS API for Python と ArcPy を比較し、組み合わせた活用例をご紹介しました。 はじめての方は、2023 年 10月に開催された 第32回 地理情報システム学会学術研究発表大会にて実施した ArcGIS API for Python の基本を学習できるハンズオン資料も公開していますので、こちらも併せてご参照ください。 ArcGIS ユーザーで Python をこれから使ってみたい方や ArcGIS での処理の自動化をご検討の方はぜひ今回ご紹介した資料をお役立てください! 関連リンク ArcGIS API for Python ・ESRIジャパン 製品ページ ・米国Esri社 製品ページ ・ArcGIS Develoers 開発リソース集 ・ブログ記事「さわって覚える ArcGIS API for Python」シリーズ ArcPy ・ ヘルプページ ・学習用資料 ・ブログ記事「【ArcGIS Pro 版】Python を使って作業の効率化を図ろう」シリーズ ArcGIS Notebooks
... View more
01-29-2024
08:19 PM
|
0
|
0
|
411
|
DOC
|
はじめに ArcGIS Pro SDK は ArcGIS Pro を拡張するアドイン開発ができる開発キットです。ArcGIS Pro のユーザー インターフェイスのカスタマイズや独自の機能を開発することができます。業務フローを効率的に実行できるように ArcGIS Pro をより使いやすく拡張することができます。 2023 年 12 月に ArcGIS Pro のバージョン 3.2 がリリースされ、それに伴い ArcGIS Pro SDK もアップデートされました。本記事では ArcGIS Pro SDK のバージョン 3.2 で拡張された機能についてご紹介します。 3D Analyst ArcGIS.Core.Data 内の新しい Analyst3D Namespace により、LAS、TIN、および Terrain データセットの新しいクラスにアクセスできるようになりました。 TinDataset クラスを使用して、TIN ノード、エッジ、三角ポリゴンのプロパティにアクセスし、TIN レイヤーを使用して見通し線解析の実行や、地形からピラミッドとピラミッド レベル情報とタイル情報を取得できるようになりました。LasDataset クラスを使用すると、サーフェス制御と個々のLASポイントにアクセスすることができます。 詳細は ArcGIS Pro SDK GitHub wiki の 3D Analyst Data にコードスニペットが公開されていますので参考にしてみてください。また 3D Analyst Community Samples では、見通し線解析、TIN レイヤーの操作、LAS データセットの操作といったサンプルも公開されていますので、併せてご参照ください。 ナレッジ グラフ バージョン 3.2 ではナレッジ グラフへのアクセスとクエリが追加されました。データ モデルのメタデータの取得、OpenCypher クエリ言語を使用したグラフ クエリの実行、全文検索の実行など、API を介してグラフ ストアにアクセスできるようになりました。 詳細については、ProConcepts のドキュメントを参照してください。また、ArcGIS Pro アドインでナレッジ グラフをどのように活用できるかを示すコード スニペットも用意しています。今後のリリースでは、ナレッジ グラフの機能がさらに追加される予定です。 ナレッジ グラフについては、「ArcGIS Knowledge の基本操作」もご参照ください。 Arcade表現の評価 アドインを使用して .NET コード内で Arcade 式をインタラクティブに評価する機能が追加されました。バージョン では、ArcadeScriptEngine と ArcadeEvaluator クラスが含まれています。 アドイン内で Arcade 式をインタラクティブに評価する方法についてはコード スニペットも公開していますのでご参照ください。 その他のアップデートで強化された機能については、APIリファレンスの「What's New for Developers at 3.2」の「API Changes」セクションを参照してください。 まとめ 本記事では ArcGIS Pro SDK バージョン 3.2 で追加された主な新機能についてご紹介しました。ArcGIS Pro SDK を使用するとオリジナルの機能をもったアドインを作成することができ、ArcGIS Pro を拡張することができますので、ArcGIS Pro のカスタマイズを検討している方はぜひご活用ください。 関連リンク ・What’s New in the ArcGIS Pro SDK 3.2 ・ArcGIS Pro ・ArcGIS Pro SDK ・ArcGIS Pro SDK 開発リソース集 ・はじめてのアドイン作成ハンズオン
... View more
01-17-2024
07:55 PM
|
0
|
0
|
295
|
DOC
|
2023 年 11 月 17 日 (金) 15:00 – 16:00 に「Python を使って ArcGIS のワークフローを効率化!」ウェビナーを開催します。 ArcGIS で提供する Python ライブラリの紹介 ArcGIS にて処理の自動化を実現できる Python ライブラリとして ArcGIS API for Python と ArcPy があります。今回のウェビナーでは、活用事例や GIS データの解析等を行うデモを通して、両製品の特長や ArcGIS における Python の活用法についてご紹介します。また、ArcGIS が提供する Python の実行環境である ArcGIS Notebooks についてもご紹介します。 ウェビナーの内容 ・GIS/ArcGIS とは ・ArcGIS API for Python/ArcPy の紹介 ・ArcGIS Notebooks の紹介 ・活用事例の紹介 ・ArcGIS API for Python/ArcPy の活用例 ウェビナーの申し込み ウェビナーは無料でご参加いただけます。ArcGIS での処理の自動化をご検討の方はぜひこの機会にご参加ください。ウェビナーの概要やお申し込みは下記ページから行っていただけます。https://www.esrij.com/events/details/170093/ 関連リンク ・ArcGIS 開発者コミュニティ ブログ記事 ・ArcGIS API for Python ・ArcPy ・ArcGIS Notebooks
... View more
11-09-2023
08:21 PM
|
0
|
0
|
810
|
DOC
|
はじめに ArcGIS Pro SDK は ArcGIS Pro を拡張するアドイン開発ができる開発キットです。ArcGIS Pro のユーザー インターフェイスをカスタマイズしたり、独自の機能を開発したりすることができます。業務フローを効率的に実行できるように ArcGIS Pro をより使いやすく拡張することができます。 本記事ではマップ上に円形の選択領域を描画し、選択領域内で見つかったフィーチャ レイヤーごとのフィーチャ数を表示するマップ ツールのアドインを作成します。このアドインを例にアドイン作成方法についてご紹介します。 本記事では下記の環境を使用しています。 ・ArcGIS Pro 3.1 ・ArcGIS Pro SDK 3.1 ・Visual Studio 2022 ArcGIS Pro SDK のインストールについてはインストールガイドをご参照ください。 プロジェクトの作成 まずは Visual Studio でプロジェクトを作成します。 Visual Studio を起動して、[新しいプロジェクトの作成] を選択し、ArcGIS Pro SDK テンプレートグループから [ArcGIS Pro モジュールアドイン] を選択しプロジェクトを作成します。 プロジェクト名や保存場所などを入力するとプロジェクトが作成されます。 デフォルトでは、Config.daml ファイルが Visual Studio で開きます。Module1.cs ファイルには、アドイン モジュール コードが含まれています。 Config.daml ファイルでは、<insertModule> タグの id が Module1.cs ファイル内の ID と一致し、className がモジュールのクラス名と一致していることが確認できます。 Config.daml Module1.cs Config.daml の <group> タグの caption を編集することで ArcGIS Pro 上でのラベルを設定することができます。 マップ ツールの作成 続いて作成したプロジェクトにマップ ツールを追加します。 ソリューション エクスプローラーでプロジェクトを右クリックし、[追加] > [新しい項目] を選択します。 [ArcGIS Pro Add-ins] グループのアイテム テンプレート リストから [ArcGIS Pro マップ ツール] を選択します。ファイルに任意の名前 (本記事では IdentifyTool.cs としています) を付け、[追加] をクリックするとマップ ツールが追加されます。 追加すると、デフォルトでマップ ツール (IdentifyTool.cs) が開きます。 Config.daml を開くと、中身が更新されていることが確認できます。 <tool> タグや <tooltip> タグでは追加したマップツールの ArcGIS Pro 上での表示を変更することができます。<tool>タグの caption ではArcGIS Pro上での表示名、<tooltip> タグの heading ではカーソルを合わせたときに表示されるツールチップを変更することができます。 今回は下記のコメントアウトした箇所のように、マップツール名やツールチップのテキストを修正します。 <!-- caption プロパティ を "カウントツール" に変更 -->
<tool id="MapToolIdentify_IdentifyTool"
caption="カウント ツール "
className="IdentifyTool"
loadOnClick="true"
smallImage="pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/GenericButtonRed16.png"
largeImage="pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/GenericButtonRed32.png"
condition="esri_mapping_mapPane">
<!-- heading の属性値を "カウントツール" に変更し、テキストもそれにあわせて修正 -->
<tooltip heading="カウント ツール">円形スケッチを使用して現在のマップ上のレイヤー毎のフィーチャ数をカウントします。<disabledText /></tooltip>
</tool> [ビルド] > [ソリューションのビルド] でアドインプロジェクトをビルドします。 ビルドに成功したら、[開始] ボタンをクリックしてデバッグを開始します。 ArcGIS Pro のスタート ページが表示されたら、任意のプロジェクトを選択して開きます。 [アドイン] タブが追加されていますのでクリックして、作成したマップツールの UI がリボン上に表示されて、上記で行ったキャプションとツールチップの変更が反映さていれることが確認できます。確認ができたら ArcGIS Pro を閉じます。 この時点では処理を実装していないため、ボタンをクリックしても何も起こりません。 次のステップでボタンをクリックしたときの処理を実装していきます。 マップ ツールの処理の実装 まずは マップツール (IdentyfyTool.cs) を開き、2D のマップだけではなく、3D シーンでもツールを使用できるように IdentifyTool() の SketchOutputMode を以下のように Screen に変更します。 public IdentifyTool()
{
IsSketchTool = true;
SketchType = SketchGeometryType.Circle;
SketchOutputMode = SketchOutputMode.Screen;
} 今回は上記のように SketchGeometryType をCircleに変更し円を描いてフィーチャを選択していますが、設定を変えることで長方形等ほかの図形を描いて選択することも可能です。 OnSketchCompleteAsync を以下のように変更し、メソッド宣言に async キーワードを追加します。 protected override async Task<bool> OnSketchCompleteAsync(Geometry geometry)
{
var mv = MapView.Active;
var identifyResult = await QueuedTask.Run(() =>
{
var sb = new StringBuilder();
// スケッチしたジオメトリと交差するフィーチャを取得
var features = mv.GetFeatures(geometry);
// レイヤーを取得
var lyrs = mv.Map.GetLayersAsFlattenedList().OfType<FeatureLayer>();
foreach (var lyr in lyrs)
{
var fCnt = features.ToDictionary().ContainsKey(lyr) ? features[lyr].Count : 0;
sb.AppendLine($@"{lyr.Name} レイヤーに {fCnt} フィーチャあります。");
}
return sb.ToString();
});
MessageBox.Show(identifyResult);
return true;
} プロジェクトを再度ビルドします。ビルドに成功したら、[開始] ボタンをクリックしてデバッグを開始します。 ArcGIS Pro のスタート ページが表示されたら、フィーチャ レイヤーが含まれる任意のプロジェクトを選択して開きます。 各フィーチャ レイヤーのフィーチャを含むマップの範囲を拡大し、作成したマップツールが期待通りに動作することを確認します。クリック&ホールドして選択円の中心点を定義し、ドラッグして半径を定義します。マウスボタンをはなすと、定義した円内で見つかったフィーチャの数がレイヤー毎にメッセージボックスに表示されます。 まとめ 本記事では選択領域内のフィーチャ レイヤーごとのフィーチャ数を表示するマップ ツールを例にArcGIS Pro のアドイン作成手順をご紹介しました。ArcGIS Pro SDK を使用するとオリジナルの機能をもったアドインを作成することができ、ArcGIS Pro を拡張することができますので、ArcGIS Proのカスタマイズを検討している方はぜひご活用ください。 関連リンク ・ArcGIS Pro ・ArcGIS Pro SDK ・ArcGIS Pro SDK 開発リソース集 ・はじめてのアドイン作成ハンズオン ・ArcGIS Pro SDK の学習サイト紹介(ArcGIS Pro SDK 2.x)
... View more
09-25-2023
07:06 PM
|
0
|
0
|
1112
|
DOC
|
はじめに 5/18(木)、5/19(金) の日程で、第20回 GIS コミュニティフォーラムが東京ミッドタウン 六本木にて開催されます! このイベントは、日本国内の GIS ユーザー並びに GIS にご興味をお持ちの方々の情報交換と GIS の利用促進を目的としています。GIS、リモートセンシングに携わる多くの方にご参加いただき、活用事例や最新テクノロジーの紹介を通してお互いのアイデアを共有する場としてご活用いただいております。今年は4年ぶりに東京ミッドタウン六本木でのリアル開催となります。 ArcGIS Developers/ArcGIS Enterprise 関連セッションのご紹介 当フォーラムでは、GIS とは何か? から、実際に日本国内の GIS 導入事例など、GIS の基本から最新情報、活用方法についてたくさんのセッションをご用意しています。 本記事では、その中から ArcGIS Developers や ArcGIS Enterprise に関連するセッションをご紹介します。 セッションのプログラム セッションの概要 ArcGIS Enterprise を使って、組織内のデータを GIS で利用しよう 5/18(木) 10:45 ~ 11:15 ルーム 5-6 (タワー4階) ArcGIS Enterprise は、Esri が提供するオンプレミスの Web GIS 用プラットフォームです。 本セッションでは、ArcGIS Enterprise 固有のコンポーネントという考え方と、SaaS である ArcGIS Online との違いや特長を紹介致します。 組織でお持ちのデータと、Esri が提供する様々なサービスを組み合わせて、GIS の利活用にお役立てください。 IoTとマップをつなぐリアルタイムGISの可能性 5/18(木) 11:30 ~ 12:00 ルーム 5-6 (タワー4階) Esri ではリアルタイムデータ活用の製品群を2種類提供しています。1つ目は、「ArcGIS Velocity」で、SaaS(Software-as-a-Service)として提供しています。2つ目は、「ArcGIS GeoEvent Server」で、オンプレミスのソフトウェアとして提供しています。これら製品を利用することで、位置情報を含むリアルタイムデータや、ビッグデータ解析が容易に実現できます。また、ArcGIS 製品との連携や、ArcGIS 製品ならではのGIS機能を利用することで、IoTとマップの新たな活用の可能性が広がります。本セッションでは、ArcGIS Velocity と ArcGIS GeoEvent Server をご紹介します。 Managed Cloud Service のご紹介 ~ArcGIS Enterprise 構築運用のアウトソース活用~ 5/18(木) 11:30 ~ 12:00 ルーム 9 (タワー4階) 本セッションでは、ArcGIS Managed Cloud Service に関してご紹介します。ArcGIS Managed Cloud Service とは ArcGIS Enterprise の基本構成を AWS にデプロイし、運用・管理を ESRI ジャパンが実施し、ご提供するサービスです。高度で複雑なインフラの構築・運用・管理をアウトソースすることで、ユーザーは自身の課題解決に集中できます。 ArcGIS 最新情報 2023 5/18(木) 16:15 ~ 17:30 ホールA (地下1階) ※オンライン視聴可能 ArcGIS はさまざまな技術や時代のトレンド、あるいはユーザーニーズを捉えて常に進化を遂げています。本セッションは ArcGIS Pro、ArcGIS Online、ArcGIS Enterprise、ArcGIS Developers など既存の ArcGIS 製品の最新情報や新製品の情報をハイライトでご紹介します。こちらをチェックいただくと最新情報がダイジェストで分かります! ArcGIS で Python を使おう!~ArcGIS API for Python と ArcPy~ 5/19(金) 10:00 ~ 10:30ルーム1-4 (タワー4階) ArcGIS のロケーションサービスを実行できる Python ライブラリとして ArcGIS API for Python と ArcPy があります。本セッションではそれぞれの製品の特長や利用イメージについて解説するとともに一部活用事例を交えて、ご紹介します。 地図アプリを簡単に、柔軟に! ~ノーコード、ローコード開発用アプリのご紹介~ 5/19(金) 10:45 ~ 12:00ルーム5-6 (タワー4階) ノーコードとは、文字通りソースコードの記述なしでアプリなどを開発できるサービスで、開発知識や開発スキルがない方でもすぐにアプリを開発することができます。しかしながら、ノーコードでは要件を満たせない場合もあるかと思います。そういった場合に、ローコードで足りない機能だけを作成することで容易に要件を満たすアプリを開発することができます。ローコードでは特に開発経験のある方はより深く理解が進むかと思われます。 本セッションでは、ArcGIS におけるノーコード・ローコードのご紹介やノーコード・ローコードを利用した地図アプリケーションの構築方法をご紹介します。 オンデマンド配信 今年は上記の現地で開催するセッションの他に Esri製品をお使いの方向けの技術セミナー動画を、5/17(水) ~ 6/30(金) の期間限定でオンライン配信いたします。第20回GISコミュニティフォーラム特設サイトより、いつでも視聴いただけます。 オンデマンド配信セッションの中から ArcGIS Developers や ArcGIS Enterprise に関連するセッションについてご紹介します。 配信セッションの概要 ArcPy 入門 ~ArcGIS Pro の作業を自動化する Python 入門~ ArcPy は Python スクリプトから地理的データの解析、変換、管理などを実行できる便利な関数やクラスを持っています。本セッションでは、Python に関する基本的な解説や ArcPy の基本的な機能について解説します。また、ArcPy を用いたArcGIS Pro の業務の自動化の例として、マップの印刷とジオプロセシングツールの実行方法について紹介します。 ArcGIS API for Python 入門 ~Python を使った ArcGIS の自動化~ ArcGIS API for Python は、Web GIS (ArcGIS Online / ArcGIS Enterprise) を活用してマップと地理空間データを扱うための Python ベースの API です。本セッションでは、ArcGIS API for Python の基礎について解説し、Python を使用した簡単なレイヤーの管理と地理空間解析についてご紹介します。 ArcGIS Enterprise のデプロイと構成例 本セッションでは、オンプレミスまたはクラウド内に構成できる、 ArcGIS Enterprise の構成、ハードウェアなどのシステム要件、 各種ライセンスについて、ArcGIS Enterprise の構成に役立つ情報を提供いたします。 また、ArcGIS Enterprise の構成例を簡単なユースケースを用いて紹介致します。 参加方法 GISコミュニティフォーラムの参加登録、また、その他のプログラム内容は、「第20回 GISコミュニティフォーラム」をご参照ください。 皆様のご参加お待ちしております! 関連リンク ArcGIS Developers ArcGIS Developers 開発リソース集 ArcGIS Enterprise ArcGIS Velocity
... View more
05-14-2023
07:35 PM
|
0
|
0
|
1619
|
DOC
|
はじめに 本記事は ArcGIS Pro で ArcPy を使った処理の基本を紹介する「【ArcGIS Pro 版】Python を使って作業の効率化を図ろう!」のシリーズ記事です。本シリーズ記事は過去に Esri Community ブログで紹介しました、ArcGIS Desktop (ArcMap) 版の「Python を使って作業の効率化を図ろう!」シリーズ記事を ArcGIS Pro 版で再編集したものです。 前回の記事では、ArcPy を使ったデータの操作方法についてご紹介しました。第 5 回目となる今回は独自のツールの作成方法についてご紹介します。 独自のツールについて ArcGIS Pro では、スクリプト ツール (Python スクリプトで実装した機能) を独自のジオプロセシング ツールとしてツールボックスに登録する機能を提供しています。作成したスクリプト ツールを他のジオプロセシング ツールと同様にカタログ ウィンドウから実行することや、モデルビルダーや Python ウィンドウなどから使用することができます。 ArcGIS で作成できるツールボックスには、カスタム ツールボックスと Python ツールボックスの2種類あり、それぞれ下記のような特徴があります。 本記事では、カスタム ツールボックスを例にご紹介します。 カスタム ツールボックスの作成 カスタム ツールボックスは 2 つのステップで作成します。 1.スクリプトを作成 2.ArcGIS Pro でカスタム ツールボックスを作成し、スクリプトを追加 以下よりステップに沿ってご紹介します。 1.スクリプトを作成 ツールボックスに登録したい処理を Python で作成します。 本記事では ESRIジャパン の GitHubで公開しているスクリプト「create_report_pro.py」を使用します。 ※ data.zip をダウンロードし解凍するとスクリプト ファイルとArcGIS Pro のプロジェクトファイルが格納されています。 このスクリプトは CSV ファイルからポイント フィーチャを作成し、マップに表示した後、PDF ファイルとして出力する一連の処理が記述されています。 2.ArcGIS Pro でカスタム ツールボックスを作成し、スクリプトを追加 カスタム ツールボックスはカタログ ウィンドウのプロジェクト フォルダ内のツールボックスに表示されます。 ツールボックスを右クリック → 新規 → スクリプトをクリックすると設定画面が開きます。 設定画面の一般タブでツールの名前、ラベル、説明を設定します。 次にパラメータータブでジオプロセシング ツールとして使用する際に入力するパラメーターを設定します。ArcGIS Pro 上でそのパラメーター用に表示されるラベル、パラメーターが受け入れるデータ タイプ、パラメーターがオプションであるか必須であるかなどを定義します。 少なくとも、パラメーターの [ラベル]、[名前]、[データ タイプ]、[タイプ]、[方向] プロパティは必ず設定する必要があります。 今回は CSV ファイルを入力し、処理の結果を PDF として出力するスクリプトを使用しているので、入力する CSV ファイルと PDF の出力先の 2 つのパラメーターを設定します。 次に実行タブで Python スクリプトの設定をします。 実行タブではスクリプト ファイル (.py) の取り込みや、コードの編集等が行えます。今回は「create_report_pro.py」のパスを設定画面上部で設定しています。 スクリプト ファイルを設定し設定画面の OK をクリックするとスクリプトツールが完成します。 その他任意で設定するパラメーターなど、スクリプト ツールの設定についての詳細はヘルプページも併せてご参照ください。 作成したツールは下記のようにジオプロセシングツールとして実行できます。 まとめ 本記事では ArcGIS Pro で ArcPy を使った処理の基本を紹介するシリーズ記事の第 5 回目として独自のツールの作成方法についてご紹介しました。作成した Python スクリプトを ArcGIS Pro のジオプロセシングツールとして使用できますので、ぜひご活用ください。 このシリーズを通して、ArcGIS Pro の ArcPy を使ってできることの基本的な部分をご紹介してきました。ArcGIS Pro の操作の自動化など業務を効率化する際に少しでも役立てていただければ幸いです。 関連リンク ESRIジャパン Web サイト ・ArcGIS Pro Esri 社 (米国) Web サイト ・ArcPy ヘルプページ ArcGIS 開発者コミュニティ ・Python を使って作業の効率化を図ろう!(ArcMap版) 【ArcGIS Pro 版】Python を使って作業の効率化を図ろう!シリーズ リンク集 第一回:ArcPy の基礎 第二回:マップ・レイヤーの操作 第三回:ジオプロセシング ツールの操作 第四回:データの操作
... View more
01-26-2023
05:21 PM
|
0
|
0
|
3565
|
DOC
|
はじめに 本記事は ArcGIS Pro で ArcPy を使った処理の基本を紹介する「【ArcGIS Pro 版】Python を使って作業の効率化を図ろう!」のシリーズ記事です。本シリーズ記事は過去に Esri Community ブログで紹介しました、ArcGIS Desktop (ArcMap) 版の「Python を使って作業の効率化を図ろう!」シリーズ記事を ArcGIS Pro 版で再編集したものです。 前回の記事では、ArcPy の基礎についてご紹介しました。第 2 回目となる今回は「マップ・レイヤーの操作」についてご紹介します。 マップとレイヤーの操作 前回の記事でご紹介したように、ArcGIS Pro のマップを操作するためにはマッピング モジュールを使用します。マッピング モジュールを使用するうえで重要なことは、ArcGIS Pro のプロジェクト ファイル、マップ、レイヤーのオブジェクトの階層構造です。 以下の図に示すように、プロジェクト ファイル配下にマップが存在し、マップ配下にレイヤーのリストが存在します。 この階層構造をたどってレイヤーのオブジェクトを取得し、さまざまな解析の実施や地図表現の操作をすることができます。 「プロジェクト ファイル」 > 「マップ」 > 「レイヤー」という階層を念頭に置いていただきましたら、ここからはマッピング モジュールを使ったマップやレイヤーの操作方法をご紹介します。 プロジェクト ファイルの取得 マッピング モジュールを使用してプロジェクト ファイルを取得することができます。前回の記事でモジュールの使い方についても少しご紹介しましたが、マッピング モジュールは arcpy.mp <クラス名・関数名> で使用することができます。プロジェクト ファイルの取得は下記のようにマッピング モジュールの ArcGISProject クラスを使用します。パラメーターとしてプロジェクト ファイル (.aprx) のパスを指定することで、取得することができます。また、CURRENT キーワードを使用することで、現在開いているプロジェクト ファイルを取得することも可能です。 # 現在開いているプロジェクトファイルを取得
aprx = arcpy.mp.ArcGISProject("CURRENT") マップの取得 次にマップの取得方法を紹介します。マップはプロジェクト ファイルに含まれるオブジェクトです。下記のように取得したプロジェクト ファイルから listMaps メソッドを使用してマップ一覧を取得することができます。listMaps を実行するとリスト型で結果が返ってくるので、下記の例のように最後にインデックス番号 [0] を指定すると、リストの先頭のマップを取得できます。 # プロジェクト ファイルのマップを取得
map = aprx.listMaps(“マップ")[0] レイヤーの取得 次にレイヤーの取得方法を紹介します。レイヤーは Map クラスに含まれる listLayers メソッドを使用します。下記のように取得したマップ オブジェクトから listLayers メソッドを呼び出して使用します。listLayers も listMaps と同様に実行結果がリスト型で返却されるので、取得したいレイヤー名やインデックス番号を指定すると、レイヤー オブジェクトを取得できます。下記のように何も指定しない場合はレイヤーの一覧をリスト型として取得できます。 # マップに含まれるレイヤーの一覧 (リスト) を取得
lyrs =map.listLayers() レイヤーの操作 ここまで、プロジェクトファイルの階層をたどり、レイヤー オブジェクトの取得までご紹介してきました。 ここでは取得したレイヤーの操作の例として、レイヤーの表示・非表示について紹介します。Layer クラスの visible プロパティを TrueまたはFalseに設定することで、レイヤーを表示または非表示にすることが可能です。 レイヤーの表示設定までの全体のコードは下記のようになります。 # ArcPyをインポート
import arcpy
# プロジェクト ファイルのオブジェクト取得
aprx = arcpy.mp.ArcGISProject("current")
# マップのオブジェクト取得
maps = aprx.listMaps()[0]
# レイヤーのオブジェクト取得
lyrs =maps.listLayers()
# レイヤーの数だけ繰り返し
for lyr in lyrs:
# レイヤーの表示設定
lyr.visible = True レイアウトの出力 マッピング モジュールは他にも ArcGIS Pro で作成したレイアウトを出力することも可能です。マップと同様に ArcGISProject クラスにレイアウトを取得するための listLayout メソッドが提供されています。使い方も listMaps メソッドと同様に下記のように記述します。 パラメーターには文字列を指定することができ、レイアウト名を入力して特定のレイアウトのリストを取得することも可能です。何も指定しない場合はプロジェクト ファイルに含まれるレイアウトすべてのリストを取得します。下記の例ではレイアウト名は何も指定せず、後ろにインデックス番号 [0] を記述することでリストの先頭のレイアウトのみを取得しています。 # 現在開いているプロジェクトファイルを取得
aprx = arcpy.mp.ArcGISProject(“CURRENT")
# レイアウトのオブジェクトを取得
layout = aprx.listLayouts()[0] 取得したレイアウトは MapView クラスの exportToPDF などの exportTo○○ メソッドを使用してさまざまな形式に出力することができます。下記の例では、exportToPDF メソッドを使用して、取得したレイアウトから PDF へエクスポートします。パラメーターには出力先となるパスやファイル名を指定します。 aprx = arcpy.mp.ArcGISProject(“CURRENT")
layout = aprx.listLayouts()[0]
# PDFへエクスポート
layout.exportToPDF(r"C:\data\output\Sample.pdf") 今回は例として PDF 形式で出力するメソッドを使用しましたが、他にも JPEG 形式で出力できる exportToJPEG メソッドなど、さまざまな形式で出力することができるメソッドが提供されています。また、Python の繰り返し処理を使用することで、ArcGIS Pro のマップ シリーズで設定した図郭ごとに出力するといった使い方も可能です。 まとめ 本記事では ArcGIS Pro で ArcPy を使った処理の基本を紹介するシリーズ記事の第二弾として ArcPyを使った ArcGIS Pro のマップやレイヤーの操作方法についてご紹介しました。今回紹介したプロジェクト ファイル、マップ、レイヤーといった階層をたどり、レイヤー オブジェクトを取得すると、そのレイヤーを使用してさまざまな GIS の解析や地図の表現を行うことができますので、ぜひご活用ください。 次回は ArcPy を使ったジオプロセシングツールの操作についてご紹介する予定です。 関連リンク ESRIジャパン Web サイト ・ArcGIS Pro Esri 社 (米国) Web サイト ・ArcPy ヘルプページ ・ArcPy 関数一覧 ・ArcPy クラス一覧 ArcGIS 開発者コミュニティ ・Python を使って作業の効率化を図ろう!(ArcMap版) 【ArcGIS Pro 版】Python を使って作業の効率化を図ろう!シリーズ リンク集 第一回:ArcPy の基礎 第三回:ジオプロセシングツールの操作 第四回:データ操作 第五回:独自ツールの作成
... View more
11-08-2022
09:38 PM
|
0
|
0
|
4015
|
DOC
|
はじめに 本記事は ArcGIS Pro で ArcPy を使った処理の基本を紹介する「【ArcGIS Pro 版】Python を使って作業の効率化を図ろう!」のシリーズ記事です。本シリーズ記事は過去に Esri Community ブログで紹介しました、ArcGIS Desktop (ArcMap) 版の「Python を使って作業の効率化を図ろう!」シリーズ記事を ArcGIS Pro 版で再編集したものです。 第 1 回:ArcPy の基礎 (本記事) 第 2 回:マップ・レイヤーの操作 第 3 回:ジオプロセシング ツールの操作 第 4 回:データ操作 第 5 回:独自ツールの作成 ArcPy とは? ArcPy は Esri が提供する Python のサイトパッケージです。Pythonを使用して地理的データの解析、変換、管理などを実行するために提供されています。ArcPy を使うとプロパティの設定やジオプロセシング ツールの実行、マップの操作などの ArcGIS 上での一連の処理をスクリプト化し自動化することができます。また、一連の処理が記述されたスクリプトをツールに登録することでジオプロセシング ツールとして汎用的に使用することも可能です。Python や ArcPy を使うことで繰り返し作業を自動化させ、作業効率を上げることができます。 ArcPy サイトパッケージの内容 ArcPy サイトパッケージには関数、クラス、モジュールが含まれています。ArcPy を使用すると ArcGIS Pro (エクステンションを含む) のすべてのジオプロセシング ツールに Python からアクセスすることができます。また、GIS データの操作や参照に役立つさまざまな関数やクラスも使用することができます。それぞれについて簡単にご紹介します。 ArcPy 関数 ArcPy ではすべてのジオプロセシング ツールに関数としてアクセスすることができます。ArcPy の関数を使用することで、ArcGIS で扱うデータセットのリスト作成、データセットのプロパティの取得、ジオデータベースに追加する前のテーブル名のチェックなど、数多くの便利なスクリプト タスクを実行できます。関数は arcpy.<関数名> で使用します。実行できるジオプロセシング ツールは、おおむね arcpy 直下に定義されています。 以下の例では、ArcGIS Pro のバッファー ツールの入出力パラメーターを定義し、ArcPyからジオプロセシング ツールに関数としてアクセスしています。 # ArcPy のインポート
import arcpy
# 入出力パラメーターの設定
station = r"C:\Data\MyProject\data.gdb\station"
output = r"C:\Data\MyProject\data.gdb\buffer"
#上で設定したパラメーターを使ってバッファーツールを実行
arcpy.Buffer_analysis(roads, output, "100 meters", "FULL", "ROUND", "NONE") ArcPy クラス ArcPy はまとまったデータや一律に設定した値で処理を行うために “クラス” を定義しています。例えば、SpatialReference クラスでは、空間参照を指定して SpatialReference クラスをインスタンス化 (クラスのメソッドやプロパティの値を参照できる形にすること) すると、その名称などを取得することができます。 以下の例では、SpatialReferenceクラスを Webメルカトルで設定し、各プロパティを出力しています。 #SpatialReference クラスを Web メルカトル (3857) で設定
sr = arcpy.SpatialReference(3857) # arcpy.<クラス名> で使用
# 設定した SpatialReference のプロパティ (name と type) を出力
print(sr.name)
print(sr.type) ArcPy モジュール ArcPy のモジュールは、データ アクセス モジュール (arcpy.da) や、マッピング モジュール (arcpy.mp) など役割に応じたいくつかのモジュールを保有しています。マッピング モジュールは主に既存のプロジェクト (.aprx) やレイヤー ファイル (.lyr や .lyrx) のコンテンツを操作することができます。また、マッピング モジュールにはマップやレイアウトのエクスポートや印刷を自動化する関数も提供しています。使い方は arcpy.mp.<クラス名または関数名> で使用します。 データ アクセス モジュールはデータを操作するためのモジュールで、例えばフィーチャクラスやテーブルなどにアクセスして操作することができます。使い方は arcpy.da.<クラス名または関数名> で使用することができます。 その他にも ArcGIS Pro のエクステンションである、Spatial Analyst モジュール (arcpy.sa) や Network Analyst モジュール (arcpy.nax) などのモジュールも提供しています。エクステンション製品の関数やクラスのご利用は各ライセンスが必要となります。 以下の例では、マッピング モジュールを使用してArcGIS Pro のプロジェクト ファイルからレイアウトを参照し、PDFにエクスポートしています。 # ArcPy のインポート
import arcpy
# 現在開いているプロジェクトファイルを参照
aprx = arcpy.mp.ArcGISProject("CURRENT")
# プロジェクトファイルの中のレイアウトを検索し取得
lyt = aprx.listLayouts("レイアウト")[0]
# PDFにエクスポート
lyt.exportToPDF(r"C:\Data\output\export.pdf") Note:ArcGIS Desktop でのマッピング モジュールと ArcGIS Pro でのマッピング モジュールでは使用方法が異なります。詳細については arcpy.mapping から ArcGIS Pro への移行も併せてご参照ください。 ArcPy の使用 ここまで ArcPy のサイトパッケージとして、関数やクラス、モジュールについてご紹介しました。import arcpy と記述することで、Python は ArcPy を読み込み、これまでにご紹介した関数、クラス、モジュールを Python から呼び出して実行することができるようになります。 ※ArcGIS Pro の Python ウィンドウを利用する場合、インポートしなくても ArcPy を利用できます。 まとめ 本記事では ArcGIS Pro で ArcPy を使った処理の基本を紹介するシリーズ記事の第一弾として ArcPy の基礎についてご紹介しました。ArcPy を使用することで、繰り返し作業の自動化ができ、作業効率を上げることができます。また、処理に条件分岐を加えることや、専用の GIS アプリケーションを起動せずとも GIS 処理を実行することができます。 GISの処理の自動化を検討している方は、ぜひご活用ください。 次回は ArcPy を使ったマップやレイヤーの操作方法についてご紹介する予定です。 関連リンク ESRIジャパン Web サイト ・ArcGIS Pro Esri 社 (米国) Web サイト ・ArcPy ヘルプページ ・ArcPy 関数一覧 ・ArcPy クラス一覧 ArcGIS 開発者コミュニティ ・Python を使って作業の効率化を図ろう!(ArcMap版) 【ArcGIS Pro 版】Python を使って作業の効率化を図ろう!シリーズ リンク集 第二回:マップ・レイヤーの操作 第三回:ジオプロセシングツールの操作 第四回:データ操作 第五回:独自ツールの作成
... View more
10-20-2022
10:54 PM
|
0
|
0
|
5070
|
DOC
|
はじめに ArcGIS Online のほとんどのコンテンツ (フィーチャ レイヤーや Web マップなど)は、ArcGIS Assistant(ベータ版)を使用して複製することができますが、より複雑なコンテンツには、ArcGIS API for Python の利用が必要になります。 本記事では、ArcGIS API for Python を使用してダッシュボード、Web アプリ、Survey123、等のコンテンツを別のアカウントへ複製する方法についてご紹介します。 ※本記事でご紹介する方法は ArcGIS StoryMaps および ArcGIS Experience Builder、Instant Apps 等には使用できませんのでご注意ください。複製可能なアイテム形式についてはガイドページ Cloning Content に記載されていますので併せてご確認ください。 複製したいアイテムの準備 まずは複製したいアイテムを特定します。 ArcGIS Online にアクセスし、複製したいコンテンツを所有するArcGIS アカウントでサインインします。コンテンツ タブをクリックし、複製したいアイテムを探します。アイテム名をクリックすると、アイテム詳細ページが表示されます。 ブラウザのアドレスバーから URL の最後 id= 以降に表示されるアイテム ID をコピーして控えておきます。 その他にも複製させたいアイテムがあればそれぞれのアイテム ID を控えておいてください。 アイテムによっては、他のアイテムを参照している場合があります。例えば、ダッシュボードはWebマップを参照し、さらにその Webマップはフィーチャ レイヤーを参照しています。ダッシュボード、Web マップ、フィーチャ レイヤーは3つの異なるアイテムですが、ダッシュボードだけ複製を行うと、参照されているアイテムも自動的に一緒に複製されます。 ノートブックの作成 ArcGIS Online や ArcGIS Pro のノートブックや Jupyter Notebook などで アイテムを複製する Python のコードを作成していきます。 ArcGIS Pro をお使いの場合、挿入タブから新しい Notebook を選択しノートブックを開きます。ArcGIS Online をお使いの場合はノートブック タブをクリックし、新しいノートブックを選択し、ノートブックを開きます。 最初のセルに以下のコードを入力し、Run ボタンで実行します。 username = input("Enter username of origin organization: ")
from arcgis.gis import GIS
gis1 = GIS("https://arcgis.com", username) 表示されるテキストボックスにユーザー名を入力し、Enter キーを押します。 次に表示されるテキストボックスにパスワードを入力し、Enter キーを押します。 続いて、アイテムの複製先の ArcGIS アカウントに接続します。 ノートブックの次のセルに以下のコードを入力し、実行します。 username_2 = input("Enter username of target organization: ")
gis2 = GIS("https://arcgis.com", username_2) 同様に表示されるテキストボックスに複製先のアカウントのユーザー名とパスワードを入力します。 続いて、複製するアイテムを特定し、複製先の ArcGIS Online アカウントにコピーします。 次のセルに以下のコードを入力します。 items = gis1.content.get("アイテムID")
print(str(len(items)) + " item will be cloned:")
items get(“アイテムID”) に最初に控えておいたアイテム ID を入力します。 複数のアイテムがある場合は以下のように複数指定することも可能です。 items = gis1.content.search(query= "id:(5f3b5c9325314fc3a11c1d649d37461e OR fc1b539234f44ee89845ea926e5e393f)") アイテム ID を入力したら、セルを実行します。 実行すると対象のアイテムのタイトルやタイプなどが表示されるので正しいことを確認します。 最後に、アイテムを対象のアカウントに複製します。 次のセルに、以下のコードを入力し、セルを実行します。 def deep_copy_content(input_list):
for item in input_list:
try:
print("Cloning " + item.title)
copy_list = []
copy_list.append(item)
gis2.content.clone_items(copy_list,copy_data=True, search_existing_items=True)
print("Successfully cloned " + item.title)
except Exception as e:
print(e)
print("The function has completed")
deep_copy_content(items) 完了すると “The function has completed” というテキストが表示されます。 ArcGIS Online に移動し、対象のアカウントでサインインします。 コンテンツ タブをクリックして、アイテムが複製されたことを確認します。 他のアイテムを参照しているアイテムを複製した場合は、参照しているすべてのアイテムが表示されます。同じアイテムを参照している異なる複数のアイテムを複製する場合は、参照しているアイテムが重複して複製されることはありません。 clone_items() メソッドの copy_data パラメータを False にすることで、参照するアイテムを複製しないことも可能です。clone_items() メソッドの詳細については API リファレンスをご参照ください。 アイテムをまとめて複製する方法 一度に複数のアイテムを複製する場合は、複製するアイテムを特定する段階で以下のようなコードを入力します。max_items パラメータで取得するアイテムの上限を設定することができます。デフォルトでは 10 が設定されています。 items = gis1.content.search(query="owner: {}".format(username), max_items=10, sort_field='id', sort_order='desc')
items 複数のアイテムを取得した状態でアイテムを複製する関数を定義した以下のセルを実行すると取得したアイテムを一括で複製することができます。 def deep_copy_content(input_list):
for item in input_list:
try:
print("Cloning " + item.title)
copy_list = []
copy_list.append(item)
gis2.content.clone_items(copy_list,copy_data=True, search_existing_items=True)
print("Successfully cloned " + item.title)
except Exception as e:
print(e)
print("The function has completed")
deep_copy_content(items) アイテムの取得については search() メソッドで対象のアイテムを絞り込むこともできます。 詳細は search() メソッドの API リファレンスや REST API の Search Reference をご参照ください。 StoryMaps の複製について 本記事で紹介した方法は ArcGIS StoryMaps を複製することはできません。ArcGIS StoryMaps を複製する方法については本記事とは別の手順で Esri のサンプルノートブックが公開されておりますのでご参考にしていただければと思います。 おわりに 本記事では ArcGIS API for Python を使用した別のアカウントへのコンテンツの複製方法についてご紹介しました。組織間のデータの移行や共有、開発段階から本番段階への移行など、コンテンツの複製が必要な際にお役立てください。また、ArcGIS API for Python のガイドページには、複製できるアイテムの形式など詳細が記載されていますのでそちらもご参考にしてください。 関連リンク ESRIジャパン Web サイト: ・ArcGIS API for Python ・ArcGIS Developer 開発リソース集 ・ArcGIS API for Python ガイド集 米国 Esri 社 Web サイト: ・ArcGIS API for Python ・ArcGIS API for Python:API リファレンス ・ArcGIS API for Python:Cloning Content ・Esri Community:How to copy content from one ArcGIS Online account to another using Python
... View more
07-04-2022
09:11 PM
|
0
|
0
|
1695
|
DOC
|
ArcGIS Pro SDK は ArcGIS Pro の機能を拡張することができる SDK ですが、昨年は多くの機能拡張があり、今後も大きなアップデートを控えております。 本記事では、米国Esri社の ArcGIS Blog で紹介されている「ArcGIS Pro Extensibility – 2021 in Review and What's Coming」の記事を翻訳してご紹介します。 目次 2021 年の Pro SDK の進化 Pro SDK 2.8 のアップデート Geodatabase DDL API API の強化 Content API Map Authoring API Pro SDK 2.9 のアップデート 新しい アイテム テンプレート レイアウト ツール Table Construction Tool API の強化 Content API Editing API Map Exploration API その他の更新 新しいパートナーアドイン 2022年の展望 ArcGIS Pro 3.0 3.0 での新しいアドイン 既存のアドインを 2.x から 3.0 に移行する 2022年の新機能 Esri Developer Summit コラボレーションとフィードバックの共有 関連リンク 振り返れば、2021 年も ArcGIS Pro と Pro の拡張性が進化したエキサイティングな 1 年でした。 ArcGIS Pro に移行し、ArcGIS Pro SDK for .NET で構築された新しいカスタム アドインを開発する組織が再び増加しました。 アドインを使用すると、組織は Pro を拡張して特定のユーザーのニーズに対応することができます。 開発者は、新しいツールやワークフローを作成し、Pro の UI をカスタマイズし、カスタム ルーチンやソリューションを構築することができます。 また、2021 年には、多くのパートナー企業が新しいソリューションや製品として、エキサイティングな Pro アドインをリリースしました。これは素晴らしいニュースであり、これらの新しいアドインは、多くの組織で Pro への移行を可能にし、ユーザーが Pro の豊富な機能をさらに活用できるようにするものです。 それでは、2021 年を振り返り、そして今年、ArcGIS Pro 3.0 で Pro の開発に何がもたらされるのか、先取りしてみましょう。 2021 年の Pro SDK の進化 ArcGIS Pro の開発チームは、1 年を通して Pro SDK の新機能をリリースし、Pro API と SDK 全般を再び成長させました。 振り返ると、5 月に Pro 2.8、11 月に Pro 2.9 がリリースされました。Pro の各リリースでは、Pro SDK と多数の Pro API に拡張機能が提供されています。これらの機能は、ワークフローをカスタマイズしようとする組織が活用することができます。 それでは、昨年からの主なアップデートを紹介していきます。 Pro SDK 2.8 のアップデート Geodatabase DDL API Pro 2.8 でリリースされた DDL (Data Definition Language) API は、ジオデータベースのスキーマを管理する機能を提供します。 従来、開発者はジオプロセシング ツールを呼び出して、SDK でフィーチャクラスやスタンドアロン テーブルなどのジオデータベース スキーマを作成していました。新しい API では、フィーチャクラス、テーブルとその属性、フィーチャ データセット、ファイル ジオデータベースなどのジオデータベース スキーマを直接作成、変更、削除することが可能です。 ProConcepts DDL ドキュメントで、概念を理解するための詳細を学び、いくつかの一般的なパターンのコードスニペットを確認することができます。 デバッグモードでDDL APIコードをステップスルーする Perimeter Toolsアドインのデモ API の強化 各リリースと同様に、2.8 では他の多くの Pro API と機能に対するアップデートが行われました。 Content API 2.8 では、プロジェクトのお気に入りを新たにサポートしました。お気に入りは、フォルダ、データベース、ツールボックス、サーバー、カスタムスタイル、統計データ コレクションなど、よく使う接続先を集めたものです。 FavoritesManager クラスを使用すると、カタログウィンドウまたはカタログビューを介して UI でアクセス可能なお気に入りのコレクションをプログラムによってカスタマイズすることができます。 お気に入りの使用方法については、ProConcepts Content ドキュメントの新しいセクションを参照してください。 また、お気に入りを使用するための新しいコードスニペットも用意されています。 Map Authoring API オフライン マップのダウンロードと管理に関する新しいサポートが追加されました。同期が有効なフィーチャ サービスのコンテンツを含む Pro のマップは、「オフライン」にすることができます。 オフライン コンテンツとは、ネットワーク接続がない状態でもマップにアクセスできるコンテンツのことです。 オフライン マップの生成と管理については、ProConcepts Map Authoring ドキュメントの新しいセクションで詳しく説明されています。 さらに詳しいコードサンプルは、新しいオフライン マップのスニペットをご覧ください。 Map Exploration API Reports API は、データソースの変更など、レポートの使用方法を管理するのに役立つイベントを含むいくつかのアップデートを行いました。詳細は、新しいレポート イベント セクションおよび API リファレンスに記載されています。 また、2.8 では、TableControl の使用に関するパフォーマンスの向上が行われました。 詳細は、ProGuide TableControl のドキュメントやコミュニティ サンプルを参照してください。 2.8 リリースの詳細については、以前の ArcGIS Blog を参照してください。 Pro SDK 2.9 のアップデート 新しい アイテム テンプレート レイアウト ツール 2.9 で搭載された新しいレイアウト ツール アイテム テンプレートにより、開発者はレイアウト ビューやマップ ビュー、レイアウト内のエレメントにグラフィックを追加/編集するためのレイアウト ツールを作成することができます。また、レイアウト ツールは、マップ ビューやレイアウト ビューでキーボードやマウスイベントが発生したときにアクションを実行するためにオーバーライドできる仮想メソッドを提供します。また、ツールの動作を設定できるプロパティや、ビューとのインタラクション時に共通の関数をラッピングするメソッドも提供します。 デバッグモードでマップとレイアウトを使用したサンプルレイアウトツール 詳しくは、ProConcepts Layout ドキュメントの新しい LayoutTool のセクションを参照してください。 また、新しい GraphicElementSymbolPicker コミュニティ サンプルでは、LayoutTool を使用した完全なワークフローを紹介していますので、お試しください。 Table Construction Tool Visual Studio のもう一つの新しいアイテム テンプレートは、Table Construction Tool です。 このテンプレートは、スタンドアロン テーブルの行を作成するための基盤となるTable Construction Tool を作成します。 また、Table Construction Tool は、スケッチ コンストラクション ツール に変更することも可能です。このスケッチのシナリオでは、マップ上のフィーチャから特定の属性を取得し、テーブルの行に入力させるコンストラクション ツールを構築することができます。 Table Construction Tool の実装に関する詳細は、ProConcepts Editing ドキュメントの新しい Table Construction Tool のセクションに記載されています。 また、2 つのスケッチ コンストラクション ツールを含む Table Construction Tool のサンプルを提供する新しい Table Construction Tool のサンプルも参照してください。TableControl の背景については、ProConcepts Map Explorationドキュメントの TableControl のセクションを参照してください。 また、ProGuide TableControl では、コントロールのウォークスルーとサンプルについて説明しています。 API の強化 また、2.9ではProのAPIにも多くのアップデートがあり、以下はその一部です。 Content API Content API では、Geodatabase コンテンツ、ファイル、および CAD データにアクセスするための新しい機能が 2.9 で強化され、開発者がカタログ ウィンドウからこれらのアイテムで直接作業できるようになりました。 これをサポートするために、データセットとデータ定義の検索を容易にするために、いくつかのメソッド (GetDatasetType、GetDataset、GetDefinition) が ItemFactory クラスに追加されました。 詳しくは、ProConcepts Content ドキュメントの Geodatabase Content セクションを参照してください。 また、2.9 では、Pro アプリケーション オプションのサブセットが ApplicationOptions クラスを介して利用できるようになりました。 このクラスは、開発者がワークフローで使用するためのオプションの取得や、設定を可能にし、時間の節約や一貫性の確保ができます。 アプリケーション オプションの詳細については、こちらのドキュメントで、APIリファレンスはこちらで、新しいコードスニペットはこちらで確認できます。 Editing API Pro 2.9 では、スケッチ シンボルのカスタマイズを管理できるようになりました。 カスタム MapTool で、スケッチ フィードバックの頂点とセグメントのシンボルを変更することができます。頂点には、選択されていない頂点、選択されている頂点、選択されていない現在の頂点、選択されている現在の頂点の 4 種類があります。 詳細は、ProConcepts Editing の Sketch Feedback and Sketch Symbology の項を参照してください。 また、新しいCustomToolSketchSymbologyコミュニティ サンプルで、この新機能の動作をご覧ください。 座標ジオメトリ(COGO)は、土地区画、道路の中心線、公共設備地役権など、フィーチャの計測と位置の特定に使用されるフィーチャ編集技術で、土地記録書類に描かれた寸法をライン フィーチャの属性として取り込むことを特徴としています。2.9 では、新しい ProConcepts COGO ドキュメントが公開されており、COGO 対応のライン フィーチャクラスのクエリと編集に使用するクラスとメソッドの詳細を示す API をカバーしています。 Map Exploration API 2.9 では、GoTo と Find のような新しい TableControl の機能拡張と、それぞれの UI の更新があります。 GoTo UI は CanGoTo と GoTo メソッドで表示でき、同様に Find UI は CanFind と Find メソッドでコード内に表示することができます。 Find メソッドと GoTo メソッドのデモを行う TableControl のサンプル 2.9 SDKのリリースの詳細については、以前の ArcGIS Blog 記事をご覧ください。 その他の更新 また、昨年は、コンセプトやガイドといった SDK のオンラインリソースを活用し、上の画像のようなすぐに実行可能なソリューションを含む無償の豊富なコミュニティ サンプルやチュートリアルを使って開発を開始することができました。 また、多くの開発者が 2021 Developer Summit にオンラインで参加し、多くの Pro SDK セッションを利用し、SDK チームや他の多くの ArcGIS Pro チームから直接最新情報を入手することができました。 Pro 開発者は、拡大する Esri Community Pro SDK Group でのコラボレーションも活用しました。このグループには、コラボレーションやリソースの検索、技術的な質問を行うために多くの開発者が参加しています。 新しいパートナーアドイン 2021 年、Esri Business Partners は ArcGIS Pro で大きな進展を続け、多くの新しい Pro アドイン製品およびソリューションをリリースしました。 これらの中には、既存の ArcMap ベースの製品のアップデート版もあれば、Pro にしかない新機能を活用した全く新しい製品もありました。 以下のパートナーは、ArcGIS Marketplace でアドインの新しい製品リストを作成しており、一部のアドインは直接ダウンロードすることができます。 これらは、この 1 年間に追加された新しいパートナー アドインの一部であり、詳細情報へのリンクも含まれています。 Ag-Analytics – Ag-Analytics Add-In for ArcGIS Pro CHA Integrated Solutions – Gas HCA/MCA Calculator Pro Addin および Pipeline Class Calculator Pro Add-in Davis Demographics – EquiZone Districting Add-in for ArcGIS Pro Environmental GIS Laboratory – Airflow Analyst for ArcGIS Pro Planet – Planet ArcGIS Add-In RIEGL – RiMAP for ArcGIS Pro SIGGIS – Geocortex Reporting for ArcGIS Pro SSP Innovations – Network Explorer add-in for ArcGIS Pro Topomat technologies – TopoForms add-in for ArcGIS Pro 2022年の展望 今年、Pro チームは ArcGIS Pro 3.0 の主要な変更に取り組んでおり、第2四半期に一般提供を開始する予定です。 また、今年の後半には、Pro 3.1 で SDK の機能が追加される予定です。 ArcGIS Pro 3.0 3.0 については、Pro 開発チームによる多くの作業が進行中であり、ここで説明するアップデートは、3 月に開催された、2022 Esri Developer Summit でも紹介されました。 まず、Pro 3.0 は、Microsoft .NET 6 (旧称.NET Core) 上に構築されることになります。開発者にとって、これは 3.0 での最も大きな変更点であると思われます。Pro の現在の .NET Framework 4.8 と次期 .NET 6 には違いがあり、Pro 2.x アドインを移行する際に考慮し処理する必要があります。 3.0 での新しいアドイン 3.0 での新しいアドインの開発は、2.x でのアドインの開発とほぼ同じで、開発者のエクスペリエンスにわずかな変更があるだけです。主な変更点は、Visual Studio 2022 と .NET 6 を使用することです。現在 Pro 2.9 でサポートされている Visual Studio 2017 および 2019 は、Pro 3.0 の開発ではサポートされません。ただし、開発者はこれまでと同様に、Visual Studio 2022 内で、Pro SDK のプロジェクトとアイテムのテンプレートを使用して、新しいアドインコンテンツを作成することができます。 既存のアドインを 2.x から 3.0 に移行する ArcGIS Pro 3.0 は互換性を破る変更を伴うリリースであり、パブリック API が変更される可能性があります。.NET 6 への移行に関連する変更のほか、廃止されたクラスやメソッド (以前のリリースで廃止とマークされたもの) の削除、パブリック API の一貫性と品質を向上させるためのリファクタリングに関する変更も行われる予定です。 2.x アドインを 3.0 に移行するには、次の 2 つのステップを行います。 ステップ 1: アドインの Visual Studio プロジェクトを Visual Studio 2017 または 2019 と .NET Framework 4.x から Visual Studio 2022 と .NET 6 に変換してください。この目的のための変換ユーティリティは、3.0 の Pro SDK の一部として提供される予定です。 ステップ 2:変換されたアドインをコンパイルし、あらゆるコンパイルエラー (重大な変更に関連するもの) を修正します。 移行前と移行後のコードスニペットを含む、開発者の移行を支援する移行ガイド ドキュメントを提供する予定です。また、Pro SDK には多くのコミュニティ サンプルが含まれていますが、これらはすべて Pro 3.0 で変換され、開発者が参照できる別の 3.0 コード例として機能する予定です。 最後に、2.9 SDK のドキュメント「Third party assemblies」にあるように、ChromiumWebBrowser コントロール (CefSharp で構築) は 2.9 で非推奨となり、Pro 3.0 で削除される予定です。 新しい WebViewBrowser コントロールがその代わりとなり、現在 Pro 2.9 でサポートされています。 2022年の新機能 2022 年の Pro SDK の焦点は .NET 6 と 3.0 への移行ですが、今年も編集および COGO API の強化、バージョニング サポートと 64 ビット のための Geodatabase API の強化、新しい ArcGIS Knowledge グラフ機能を扱うための API などの新しい SDK 機能が予定されています。 これらの新機能の多くは、今年の後半にリリースされる 3.1 で提供される予定です。 さらに、コンセプト ドキュメントやガイド、コード スニペット、コミュニティ サンプルの強化など、SDK リソースの更新も継続的に行われる予定です。 Esri Developer Summit Pro SDK の学習機会として今年最も優れているのが、3月に開催された Esri Developer Summit です。 ArcGIS Pro および Pro SDK のセッションに参加して学習し、Pro SDK と Pro API を開発する Pro チームのスタッフから直接最新情報を得ることができます。 Developer Summit 2022では、今年もPro SDKのセッションが多数開催されました。Esri社のArcGIS Blogではセッション動画へのリンクが公開されておりますのでご覧ください。 コラボレーションとフィードバックの共有 これまでと同様、Pro SDK に対するお客様のフィードバックやニーズをお寄せください。Esri Community Pro SDK グループで、情報を提供したり、詳細を確認したり、他のユーザーと協力したりすることができます。 このグループは非常に活発で、開発者は技術的な質問をしたり、既存のスレッドで回答を検索したり、質問に回答したりすることができます。 最後に、ArcGIS Pro 2.9 の最新の主な機能の詳細については、ArcGIS Pro 2.9 の新機能ページを参照してください。このページでは、いくつかのエキサイティングな新機能を紹介した次のビデオをご覧いただけます。 ArcGIS Pro を活用していただく皆様をお待ちしております。本年もよろしくお願いいたします。 関連リンク ESRIジャパン Web サイト ・ArcGIS Pro ArcGIS Developer 開発リソース集 ・ArcGIS Pro SDK ArcGIS 開発者コミュニティ ・ArcGIS Pro SDK の学習サイト紹介 Esri 社 (米国) Web サイト ・ArcGIS Pro SDK ヘルプページ Esri社 ArcGIS Blog ・ArcGIS Pro Extensibility – 2021 in Review and What's Coming ・ArcGIS Pro SDK Sessions Available from Dev Summit 2022
... View more
05-26-2022
06:56 PM
|
0
|
0
|
1747
|
DOC
|
2021年 10 月 22 日 (金) に「ArcGIS Platform 活用ウェビナー ~オープンソースのライブラリを使用した地図アプリ開発ハンズオン~」を開催しました。今回のウェビナーでは ArcGIS Platform の概要や、オープンソースの Esri Leaflet を使用したルート検索アプリ開発についてハンズオン形式にてご紹介しました。 ウェビナーで使用した資料を ESRIジャパンの GitHub で公開しております。ハンズオンでの手順も公開していますので、開発者アカウントをお持ちであればルート検索アプリ開発を体験していただくことができます。当日ご参加できなかった方もご活用ください。 「ArcGIS Platform 活用ウェビナー」発表資料 (PDF) オープンソースの Esri Leaflet を使用したルート検索アプリ開発のハンズオン ■関連リンク ●ArcGIS Platform ESRIジャパン製品ページ 米国 Esri 社製品ページ (英語) ブログ記事: ArcGIS Platform (PaaS) の国内サービスを開始しました! ブログ記事: 「ArcGIS Platform 紹介ウェビナー」の資料を公開 ブログ記事: ArcGIS Platform の紹介 ~ロケーションサービスの機能と価格~ ブログ記事: ArcGIS Platform の紹介 ~API/SDK のラインナップと使い分け~ ブログ記事: ArcGIS Platform の紹介 ~開発を始めるまでのステップ~ 動画: ArcGIS Platform で開発を始めるまでのステップ ●ArcGIS Developer 開発リソース集 ArcGIS Platform スタートアップ ガイド
... View more
11-08-2021
11:28 PM
|
0
|
0
|
582
|
DOC
|
2021 年 10 月 22 日 (金) 15:00~16:30 に「ArcGIS Platform 活用ウェビナー ~オープンソースのライブラリを使用した地図アプリ開発ハンズオン~」を開催します。 ArcGIS Platform ArcGIS Platform は、ロケーションサービスを Platform as a Service (PaaS) として提供します。高品質・高機能なロケーションサービスを使用して、位置情報をアプリやビジネスシステムに統合することができます。ロケーションサービスは、ArcGIS の API/SDK、ローコードツール、さらに Leaflet や Mapbox GL JS、OpenLayers などの OSS で使用できます。 ArcGIS Platform の詳細は、ブログ記事「ArcGIS Platform (PaaS) の国内サービスを開始しました!」をご覧ください。 ウェビナーの内容 今回のウェビナーでは、前半に ArcGIS Platform の概要や活用事例のご紹介、後半は実際にオープンソースのマッピングライブラリ「Leaflet.js」とそのプラグインとして公開されている「Esri Leaflet」をはじめとした ArcGIS Platform で API を利用したルート検索アプリの開発についてハンズオン形式でご紹介します。ハンズオンでは ArcGIS Platform が提供するサービスである住所検索やルート検索、またそれらを組み合わせたアプリ開発ついてをご紹介する予定です。発展形として Calcite Design System を使ったアプリのデザインの例についても少しご紹介します。詳細は当日を楽しみにしていてください! プログラム ・ArcGIS Platform の概要 ・オープンソースの Esri Leaflet を使用したルート検索アプリ開発のハンズオン ・まとめ / Q & A ウェビナーの申し込み お申し込みは下記のページから行っていただけます。 https://www.esrij.com/events/details/146096/ ハンズオンにご参加希望の方は、PC、インターネットに接続できる環境、ArcGIS Developer 開発者アカウントをご用意ください。ArcGIS Developer 開発者アカウントの作成は無料で行えます。作成方法は「開発者アカウントの作成」をご参照ください。 ウェビナーは無料でご参加いただけます。聴講のみのご参加も可能ですので、ご興味のある方はお申し込みの上、是非ご参加ください! ■関連リンク ●ArcGIS Platform ・ESRIジャパン製品ページ ・米国 Esri 社製品ページ (英語) ・ブログ記事: ArcGIS Platform (PaaS) の国内サービスを開始しました! ・ブログ記事: 「ArcGIS Platform 紹介ウェビナー」の資料を公開 ・ブログ記事: ArcGIS Platform の紹介 ~ロケーションサービスの機能と価格~ ・ブログ記事: ArcGIS Platform の紹介 ~API/SDK のラインナップと使い分け~ ・動画: ArcGIS Platform で開発を始めるまでのステップ ●ArcGIS Developer 開発リソース集 ・ArcGIS Platform スタートアップ ガイド
... View more
10-12-2021
07:16 PM
|
0
|
0
|
838
|
DOC
|
はじめに ArcGIS Platform は 2021 年 5 月に国内サービスを開始した地図アプリ開発者のための PaaS 製品です。 ArcGIS Platform の詳細は、ブログ記事「ArcGIS Platform (PaaS) の国内サービスを開始しました!」をご覧ください。 「ArcGIS Platform の紹介 ~ロケーションサービスの機能と価格~」の記事では、ArcGIS Platform で利用できるロケーションサービスについて、「ArcGIS Platform の紹介 ~API/SDK のラインナップと使い分け~」の記事ではそのロケーションサービスを使用するための API/SDK のラインナップと選択する際のポイントについて紹介しました。 本記事では、ArcGIS Platform を使用した開発を始めるまでのステップとして、アカウントの作成方法から作成したアプリケーションにAPIキーを適用するまでの簡単な流れをご紹介します。 開発者アカウントの作成 ArcGIS Platform が提供するサービスを使用するにはまず、開発者アカウントを作成します。 ArcGIS Developer サイトのトップページで、 [Start building for free] をクリックするとアカウント作成画面に遷移します。 アカウント作成画面では名前やメールアドレス、組織名、ユーザー名、パスワード、秘密の質問を入力します。最後に利用規約とプライバシーポリシーに同意する場合は、同意欄にチェックを入れ、ページ下部の [Create developer account] をクリックします。 必要事項を入力後、登録したメールアドレス宛に Esri (no-reply@esri.com) から登録確認のメールが届きます。届いたメールを開きメール本文の [Confirm your email] をクリックすると開発者アカウントの作成が完了します。 ダッシュボードの紹介 開発者アカウントをお持ちであればダッシュボードと呼ばれるページを利用することができます。このダッシュボードではアカウントの管理や、ArcGIS Developer が提供する API・SDKのダウンロード、ArcGIS Platform のサービスを使用するために必要な API キーの作成やその管理、また従量課金制を有効化した場合のサービスの利用状況を把握することなどができます。 API Keys タブではAPIキーの管理や新規作成が行えます。例えば [View Usage] をクリックすると APIキーの利用状況として ArcGIS Platform のどのサービスを使用したかをグラフなどで APIキーごとに確認することができます。 Layers タブでは ArcGIS にホストしたフィーチャレイヤーやWebマップ等の表示や管理を行うことができます。 Downloads タブでは ArcGIS Developer が提供する APIやSDKをダウンロードしていただくことが可能です。 Usage タブでは従量課金制を有効化した場合にサービスをどのくらい使用したかなどの利用状況を把握することができます。API Keys タブではAPIキー毎の利用状況でしたが、こちらのタブではすべての利用状況を確認することができます。 Account タブではアカウントの管理が可能です。無償利用の枠を超えた利用を可能とする従量制プランのサービスである Pay as you go を有効化すること等アカウントの設定を行うことができます。 このようにダッシュボードでは開発者アカウントを作成した後の管理等にご活用いただけます。 API キーの作成と利用 APIキーとはすぐに使える特定のサービスやプライベート コンテンツへのアクセスを公開アプリケーションに許可を定義する永続的なアクセストークンです。このAPIキーを使用してアプリケーションに組み込むことで ArcGIS Platform が提供する様々なサービスを利用することができるようになります。 APIキーは上記でご紹介したダッシュボードから作成が可能です。API Keys タブの上部にある [New API Key] というボタンから作成することができます。 作成した API キーは以下の画像のようにダッシュボードに表示され、ここで管理することができます。 例えば、既存の API キーを開くと API キーの削除や利用するロケーションサービスの選択等の管理を行うことができます。また、API・SDK 毎に API キーを適用してマップを表示するコード例なども記載されています。 以下の動画では、例としてダッシュボードで API キーを作成し、OpenLayers で作成したアプリケーションに対して、API キーを適用させルート解析を実行しています。動画内で使用しているアプリケーションはチュートリアルにも記載されていますので、アプリケーションの詳細はそちらも併せてご参照ください。 まとめ 本記事では開発を始めるまでのステップとしまして、ArcGIS 開発者アカウントの作成から、アプリケーションに API キーを適用するまでの簡単な流れについてご紹介しました。開発者アカウントは無償で作成していただくことが可能ですので ArcGIS Platform が提供するロケーションサービスを使用したアプリ開発にぜひご活用いただけたらと思います。また、動画でも開発を始めるまでのステップについて紹介しておりますのでそちらも併せてご活用ください。 10 月 22 日 (金) には「ArcGIS Platform 活用ウェビナー ~オープンソースのライブラリを使用した地図アプリ開発ハンズオン~」を開催します。前半は ArcGIS Platform の概要や活用事例のご紹介、後半は実際にオープンソースのマッピングライブラリ「Leaflet.js」とそのプラグインとして公開されている「Esri Leaflet」をはじめとした ArcGIS Platform で API を利用したルート検索アプリの開発についてハンズオン形式でご紹介します。聴講のみのご参加も可能ですので、ご興味のある方はお申込の上、是非ご参加ください。 ■関連リンク ●ArcGIS Platform ・ESRIジャパン製品ページ ・米国 Esri 社製品ページ (英語) ・ブログ記事: ArcGIS Platform (PaaS) の国内サービスを開始しました! ・ブログ記事: 「ArcGIS Platform 紹介ウェビナー」の資料を公開 ・ブログ記事: ArcGIS Platform の紹介 ~ロケーションサービスの機能と価格~ ・ブログ記事: ArcGIS Platform の紹介 ~API/SDK のラインナップと使い分け~ ・動画: ArcGIS Platform で開発を始めるまでのステップ ●ArcGIS Developer 開発リソース集 ・ArcGIS Platform スタートアップ ガイド
... View more
10-04-2021
09:55 PM
|
0
|
0
|
1158
|
DOC
|
はじめに 以前、GeoNetブログでは、ArcGIS API for Python のガイド、サンプル、API リファレンスなどのリソースを最大限ご活用いただく第一歩として、ガイドの中で紹介されている主要なモジュールを中心にご紹介する「さわって覚える ArcGIS API for Python」シリーズを公開しました。 さわって覚える ArcGIS API for Python シリーズ 基本編 (GIS モジュール編) フィーチャ データ編 場所検索、ジオコーディング編 ネットワーク解析編 (前編) / ネットワーク解析編 (後編) マッピング、可視化編 ラスター編 本記事では、Spatially Enabled DataFrame 編としてガイドページ「Introduction to the Spatially Enabled DataFrame」の翻訳をもとにご紹介します。紹介したノートブックは GitHub にも公開しますので、ご参照ください。 ArcGIS API for Python の環境構築がお済みでない方は、開発リソース集のインストールガイドに掲載しておりますので、ご参照ください。 本記事では以下の内容でご紹介します。 Spatially Enabled DataFrame の概要 GISデータへのアクセス ・フィーチャ レイヤーの読み取り ローカルの GIS データへのアクセス Spatially Enabled DataFrame のエクスポート ・シェープ ファイルやフィーチャ クラスへエクスポート ・フィーチャ レイヤーとして公開 Spatially Enabled DataFrame の概要 Spatially Enabled DataFrame (以下 SEDF) は、属性データなどを簡単に操作できるシンプルで直感的なオブジェクトを作成することができます。SEDF は、一般的な Pandas の DataFrame の構造に spatial というカスタムネームスペースを挿入して、空間的な機能を持たせます。これにより、属性列と空間列の両方に対して、直感的な操作を使用することができます。SEDF は、シェープファイル、Pandas の DataFrame、フィーチャ クラス、GeoJSON、フィーチャ レイヤーなどといった多くのソースから読み込むことができます。 GIS データへのアクセス GIS ユーザーは、ポータル上に公開されているレイヤーやローカルのデータの両方で作業する必要がありますが、ArcGIS API for Python では、データを永続的にコピーすることなく、これらのデータセットを操作する機能が不足していました。SEDF は、地理空間データの読み取り、書き込み、操作が可能なインメモリ・オブジェクトであるため、この問題を解決することができます。 SEDF は、Esri の ArcPy やオープン ソースの pyshp、shapely、および fiona といったライブラリと統合されています。つまり、ArcGIS API for Python の SEDF は、これらのジオメトリ エンジンのいずれかを使用して、プラットフォームに関係なく地理空間データを簡単に操作するためのオプションを提供することができます。SEDF はデータを希望の形式に変換するので、Python の機能を使用して地理情報の分析や可視化を行うことができます。 データを読み込んでスクリプト化してワークフローを自動化したり、Jupyter Notebook のマップ上に簡単に可視化したりすることができます。また、データをフィーチャ クラスとしてエクスポートすることや、ArcGIS Online や ArcGIS Enterprise に公開して共有することも可能です。 本記事では SEDF として読み取る例をいくつかご紹介します。 フィーチャ レイヤーの読み取り ArcGIS Online や ArcGIS Enterprise でホストされているフィーチャ レイヤーは、from_layer() メソッドを使用して SEDF として簡単に読み込むことができます。SEDF オブジェクトに読み込んだら、レポートを作成したり、データを操作したり、目的に合った形式に変換したりすることができます。 以下の例はArcGIS Online に公開されているアイテムを取得し、最初の 5 つのレコードを表示します。 from arcgis import GIS
gis = GIS()
item = gis.content.get("85d0ca4ea1ca4b9abf0c51b9bd34de2e")
flayer = item.layers[0]
# Spatially Enabled DataFrame オブジェクトの作成
sdf = pd.DataFrame.spatial.from_layer(flayer)
sdf.head() また、FeatureLayer オブジェクトで、クエリを使用するとレコードのサブセットを返すこともできます。FeatureLayer に対して query() メソッドを実行すると、FeatureSet オブジェクトが返されます。FeatureSet の sdf プロパティを呼び出すと、SEDFのオブジェクトが返されます。 以下の例では、「AGE_45_54」カラムを使用してデータフレームに対し検索を行い、レコードのサブセットを含む新しいデータフレームを取得しています。その後、pandas の head() メソッドを使用して、取得した データフレームから最初の 5 つのレコードとカラムのサブセットを返します。 # queryメソッドを使ってフィーチャ レイヤーのレコードをフィルタリングしデータフレームを取得
df = fl.query(where="AGE_45_54 < 1500").sdf
# 最初の5つのレコードだけの列のサブセットを返す
df[['NAME', 'AGE_45_54', 'POP2010']].head() ローカルの GIS データへのアクセス SEDF はローカルの GIS データにもアクセスすることができます。インストールされている Python のモジュールに応じて、幅広い機能にアクセスすることができます。例えば、ArcPy がインストールされている場合、つまり ArcGIS Pro がインストールされていて、同じ環境に ArcGIS API for Python がインストールされている場合、フィーチャ クラスやシェープファイルなどといった ArcGIS がサポートするデータ形式から読み込むことができます。 以下の例では from_featureclass() メソッドを使用してシェープファイルを読み込み、pandas の tail() メソッドで取得したデータフレームの最後から 5 レコードを表示しています。 ※ ArcPy にアクセスできない Python インタプリタを使用してシェープファイルを読み取る from_featureclass() メソッドを使用するには、ArcGIS Online または ArcGIS Enterprise にサイン インをする必要があります。 # ArcGIS Online / ArcGIS Enterprise にサイン イン
g2 = GIS("https://arcgis.com", "<ユーザー名>", "<パスワード>")
# from_featureclass() メソッドを使用してシェープファイルの読み込み
sdf = pd.DataFrame.spatial.from_featureclass("<シェープファイルのパス>")
sdf.tail() ファイルジオデータベースのフィーチャクラスの場合も同様に from_featureclass() メソッドを使用して SEDF として読み取ることができます。 Spatially Enabled DataFrame のエクスポート SEDFは、他のアプリケーションで使用するために、データを様々なデータ形式にエクスポートすることができます。ここでは SDEF をシェープファイルやフィーチャクラスとしてエクスポートする方法やフィーチャ レイヤーとしてエクスポートする方法をご紹介します。 シェープファイルやフィーチャクラスへエクスポート 以下の例では取得した SEDF に対し、to_featureclass() メソッドを使用して、シェープファイルとしてエクスポートしています。 # to_featureclass() メソッドでシェープファイルとしてエクスポート
sdf.spatial.to_featureclass(location=r"c:\output_examples\census.shp") ファイルジオデータベースのフィーチャクラスの場合も同様にto_featureclass() メソッドを使用することでエクスポートが可能です。 # to_featureclass() メソッドでフィーチャ クラスとしてエクスポート
sdf.spatial.to_featureclass(location=r"c:\output_examples\census.gdb\cities") フィーチャ レイヤーとして公開 SEDFでは、データセットをフィーチャ レイヤーとして公開することもできます。以下の例のようにSDEF に対してto_featurelayer() メソッドを使用することで公開ができます。 # to_featurelayer () メソッドでフィーチャレイヤーとして公開
lyr = sdf.spatial.to_featurelayer('census_cities', folder='census')
lyr おわりに 今回は、Spatially Enabled DataFrame 編としまして、様々なデータから SEDF として取得する例をご紹介しました。取得したデータフレームは編集や可視化などと様々な処理に活用することができます。活用方法としまして、ガイドページの「Visualizing Data with the Spatially Enabled DataFrame (英語)」や 「Spatially Enabled DataFrames - Advanced Topics (英語) 」もご参照ください。また、ArcGIS API for Python を使用する際は冒頭でご紹介したガイドやサンプル、API リファレンスなどのリソースと併せて、本シリーズブログもご活用ください。 関連リンク ArcGIS 関連ページ ・ArcGIS API for Python(ESRIジャパン製品ページ) ・ArcGIS for Developers(ESRIジャパン製品ページ) ・ArcGIS Online(ESRIジャパン製品ページ) ・ArcGIS for Developers 開発リソース集 ・ArcGIS API for Python(米国Esri ページ(英語)) シリーズブログ 関連ページ ・ArcGIS API for Python を使ってみよう シリーズブログ 開発リソース集 ・ArcGIS for API for Pythonのコンセプト ・インストールガイド ・ArcGIS for API for Pythonのための基礎環境:conda入門 関連するノートブック ・Spatially Enabled DataFrame の概要
... View more
02-25-2021
05:50 PM
|
0
|
0
|
3850
|
DOC
|
はじめに 2020 年も残すところあとわずかとなりました。マッピング & ロケーション開発のプラットフォームである「ArcGIS for Developers」を最大限活用いただくために、ESRIジャパンの開発者製品 / Enterprise 製品を担当するチームでは、ArcGIS の開発や Enterprise 製品の活用に係る情報発信を行ってまいりました。今年は新型コロナウイルスの影響によりウェビナーでの開催となったイベントもありましたが、これらのイベントで使用した資料やサンプル コードは、その都度公開しております。 また、ArcGIS プラットフォームを拡張するパターンは多岐にわたり、開発者向けの製品が多いことから、初めての方は欲しい情報を探す時間が長くなりがちです。 そこで、今回の記事では、昨年と同様、2020 年に公開したイベント資料やブログ記事を中心に、API/SDK などのカテゴリー別にリンクをまとめておきたいと思います。各リンクにはそれぞれ、紹介している内容のレベルの目安として、【基礎】、【応用】 のフラグを付けています。気になったリンクがあれば、この機会にブックマーク等していただければ幸いです。 ArcGIS for Developers イベント資料 マッピング&ロケーション開発最前線 2020:イントロダクション (資料) / ArcGIS 開発者製品の概要と最新動向 (資料) 【基礎】 ArcGIS for Developers でできることやその最新動向について紹介したイベント資料 ArcGIS API for JavaScript イベント資料 ArcGIS 開発者のための最新アプリ開発塾 2020:ArcGIS API for JavaScript を使用して Web アプリを開発してみよう!(資料/ハンズオン) 【応用】 ArcGIS API for JavaScript を使用したウィジェット開発を学ぶことができるハンズオン マッピング&ロケーション開発最前線 2020:ArcGIS API for JavaScript による Web アプリ開発 (資料) 【基礎】 API を使用した Web アプリ開発の基礎を紹介したイベント資料 ブログ 続編 はじめての Web マッピングアプリケーション開発シリーズ 【基礎】 API を使用した Web アプリ開発の基礎を紹介したシリーズ記事の続編。ウィジェットの実装や認証について解説した記事 Vue でカスタム ウィジェットを作成 【応用】 ArcGIS API for JavaScript と Vue を統合して利用した解説記事 React でカスタム ウィジェットを作成 【応用】 ArcGIS API for JavaScript と React を統合して利用した解説記事 ArcGIS Web AppBuilder (Developer Edition) ガイド ウィジェット一覧表 【基礎】 ArcGIS Web AppBuilder (ArcGIS Online 版、ArcGIS Enterprise 版、Developer Edition 版) で提供されているウィジェットの一覧表 ArcGIS Experience Builder (Developer Edition) ガイド ArcGIS Experience Builder (Developer Edition) の開発に役立つガイド集 コア コンセプト 【基礎】 インストール ガイド 【基礎】 カスタム ウィジェット開発ガイド 【基礎】 デプロイ 【基礎】 ブログ スターター ウィジェットの作成 (ArcGIS Experience Builder) 【基礎】 チュートリアル「Create a starter widget」を翻訳して紹介した記事 マップの座標を取得 (ArcGIS Experience Builder) 【基礎】 チュートリアル「Get map coordinates」を翻訳して紹介した記事 ArcGIS Runtime SDK イベント資料 ArcGIS 開発者のための最新アプリ開発塾 2020:ArcGIS Runtime SDK for .NET を使用して現地調査アプリを開発してみよう! (資料/ハンズオン) 【応用】 ArcGIS Runtime SDK を使用した調査アプリケーション構築までを学ぶことができるハンズオン ブログ Data Collection for .NET の機能を解説シリーズ 【応用】 米国 Esri が公開している Data Collection for .NET が持つ主要な機能を紹介した記事 ArcGIS Runtime SDK で実現できるオフラインワークフローシリーズ 【基礎】 ArcGIS Runtime の特長であるオフライン ワークフローの 2 つのパターンについて紹介したシリーズ記事 ArcGIS Runtime SDK:AR (拡張現実) ツールキットと Xamarin によるビルドとデプロイ手順のご紹介 【応用】 米国 Esri がオープンソースで公開している AR ツールキットについて、Xamarinによるビルドからデプロイ方法までを解説した記事 ArcGIS Pro SDK for .NET サンプルツール ArcGIS Pro SDK Tools ArcGIS Pro SDK を使用したサンプルツール (地域メッシュツール/クリップツール) をGitHub上で公開 ArcGIS API for Python イベント資料 ArcGIS 開発者のための最新アプリ開発塾 2020:ArcGIS API for Python を使用した現地調査用オフライン データの作成 (資料/ハンズオン) 【応用】 UI や Python スクリプトからオフライン データを作成する方法を学ぶことができるハンズオン ArcGIS 開発者のための最新アプリ開発塾 2020:ArcGIS API for Python を使用した Web マップ更新 (資料/ハンズオン) 【応用】 ArcGIS API for Python で Web マップやホスト フィーチャ レイヤーの更新を学ぶことができるハンズオン ブログ さわって覚える ArcGIS API for Python シリーズ 【基礎】 ArcGIS API for Python の使い方の基礎を紹介したシリーズ記事 はじめてのArcGIS API for Python 【基礎】 Learn ArcGIS のレッスンを翻訳して紹介した記事 ArcPy 学習資料 ArcGIS ユーザーのための Python 基礎 【基礎】 ArcGIS ユーザー向けに Python の基礎や構文の使い方などを紹介した資料 Python によるプログラミング – ArcMap 版 【基礎】 ArcMap を利用する際の ArcPy を使った処理の基本を紹介した資料 Python によるプログラミング – ArcGIS Pro 版 【基礎】 ArcGIS Pro を利用する際の ArcPy を使った処理の基本を紹介した資料 ArcGIS Enterprise イベント資料 マッピング&ロケーション開発最前線 2020:ArcGIS Enterprise の拡張と最新動向 (資料) 【基礎】 ArcGIS Enterprise の概要やその最新動向について紹介したイベント資料 ブログ アイテム管理のポイントの紹介 – 前編 –:タグを効果的に活用しましょう / – 後編 –:カテゴリを活用しましょう ポータル サイトのアイテムに設定するタグの効果的な利用方法の説明 ArcGIS Enterprise の管理に活躍!ArcGIS Data Store コマンド ユーティリティの紹介 REST 以外にも存在する ArcGIS Data Store を管理するコマンドユーティリティの説明 Portal for ArcGIS にシェープファイルをアップロードする方法をご説明します ポータル サイトにシェープファイルのデータを公開する際の Tips の紹介 Web サイトにマップやアプリを埋め込む方法のご紹介! Web ページに ArcGIS の Web マップやアプリを埋め込む手順の説明 厳選!!知っておくべき ArcGIS Enterprise 10.8 の新機能 2020 年 5 月にリリースした ArcGIS Enterprise 10.8 の新機能を紹介 ArcGIS GeoEvent Server Startup ガイド公開 ArcGIS GeoEvent Server をインストールし、動作させるまでの手順書の紹介 ArcGISEnterprise 導入に役立つ System Design Strategies のご紹介 ArcGIS Enterprise の環境構築時に利用できる System Design Strategies の概要説明 ポータル サイト上のアイテムを保護する方法 アイテムの削除やデータのエクスポートなどの許可/不許可などの各種設定の紹介 意外と知らない!? Web マップがもっと使える検索設定 Web マップの検索をさらに使いやすくする設定の紹介 ArcGIS Enterprise バックアップ・リストア ガイド (webgisdr) / サンプル 1 - 単一マシン構成の新しい単一マシンへの移行 ArcGIS Enterprise 全体をバックアップ/リストアを行う webgisdr の説明と使用方法を紹介 Esri ユーザーカンファレンス 2020 のリアルタイム GISに関する Q&A Esri の UC での ArcGIS GeoEvent Server や ArcGIS Velocity への QA の紹介 ブランチバージョンの概要 / ブランチ バージョンで利用できる機能 Portal for ArcGIS で使用できるブランチ バージョンの概要および機能の紹介 ブログ記事アクセス数 TOP 10 今年もブログ記事を定期的に公開してきました!上記と重複する記事もありますが、2020 年公開記事の閲覧数 (2020 年 12 月 15 日時点) 上位 10 記事をご紹介します! 第 1 位:ArcGIS Proでニューヨーク・タイムズの新型コロナの時系列データを可視化する方法 第 2 位:続編 はじめてのWeb マッピングアプリケーション開発:ウィジェット編 第 3 位:さわって覚える ArcGIS API for Python:基本編 (GIS モジュール編) 第 4 位:続編 はじめてのWeb マッピングアプリケーション開発:印刷ウィジェット編 第 5 位:「地理院地図Vector」(仮称)をArcGIS で表示してみました - 第2弾 第 6 位:アイテム管理のポイントの紹介 – 前編 –:タグを効果的に活用しましょう 第 7 位:STAY HOME で マッピング & ロケーション開発を学ぶ方法 第 8 位:さわって覚える ArcGIS API for Python:マッピング、可視化編 第 9 位:厳選!!知っておくべき ArcGIS Enterprise 10.8 の新機能 第 10 位:さわって覚える ArcGIS API for Python:ネットワーク解析編 (前編) おわりに 本記事ではご紹介しきれなかった情報もございますが、上記の中身を見ていただければそれぞれの API/SDK についてご確認いただけると思います。ESRIジャパンの GitHub では他にもサンプル コードなどを公開しており、例えば workshops リポジトリでは過去のイベントで発表した資料やコードがまとまっています。 今後も多くのサンプル コードやブログ記事など、ArcGIS での開発や Enterprise 製品を活用する皆様に役立つ情報をお届けしたいと思います。 それでは、よいお年をお過ごしください。来年も引き続きよろしくお願いいたします。 関連リンク ・ArcGIS for Developer 開発リソース集 ・GeoNet 開発ブログ ・Esri Japan GitHub ・マッピング & ロケーション開発 (ArcGIS for Developers) 2019 振り返り
... View more
12-22-2020
05:45 PM
|
0
|
0
|
1208
|
Title | Kudos | Posted |
---|---|---|
1 | 05-15-2019 10:13 PM |
Online Status |
Offline
|
Date Last Visited |
Friday
|