コード スニペットの使用

ArcGIS Notebooks では、コード スニペットと呼ばれる再利用可能な記述済みノードを参照または作成し、ノートブックに挿入できます。

コード スニペットの作成

ノートブックからコード スニペットを作成できます。 作成したスニペットは、同じノートブックまたは他のノートブックで使用できます。 作成したコード スニペットは、スニペットの整理に使用されるノートブック コード スニペット ライブラリ アイテムに保存され、共有することができます。

コード スニペットを作成するには、スニペットを保存するノートブック コード スニペット ライブラリを先に作成する必要があります。 コード スニペット ライブラリには最大 100 個のスニペットを保存できます。

ノートブック コード スニペット ライブラリの作成

コード スニペット ライブラリを作成するには、次の手順を実行します。

  1. ノートブックを開きます
  2. ノートブック エディターの上部のリボンで、[コード スニペット] をクリックします。
  3. [追加] ボタン 追加 をクリックして [ライブラリ アイテムの作成] を選択します。
  4. ライブラリのタイトルとサマリーを入力し、必要に応じて、そのライブラリに保存されるコード スニペットを表すタグを追加します。
  5. 必要に応じ、コード スニペット ライブラリの保存先として [フォルダー] の下の場所を選択します。
  6. [作成] をクリックします。

コード スニペット ライブラリを作成すると、他のアイテムと同じように組織サイトに格納されます。 [コード スニペット] ウィンドウの [その他のオプション] ボタン その他 をクリックして [ライブラリ アイテムの管理] をクリックすることで、コード スニペット ライブラリを管理できます。 [コード スニペット ライブラリ アイテムの管理] ウィンドウで、新しいコード スニペット ライブラリを作成できます。また、コード スニペット ライブラリごとにアイテム ページを共有、編集、表示し、ライブラリを非推奨としてマークできます。

コード スニペットの追加

ライブラリの作成が完了したら、コード スニペットをライブラリに追加できます。 コード スニペットを追加するには、次の手順を実行します。

  1. ノートブックを開きます
  2. ノートブック エディターの上部のリボンで、[コード スニペット] をクリックします。
  3. [追加] ボタン 追加 をクリックし、[コード スニペットを追加] を選択します。
  4. コード スニペットのタイトルを入力し、そのコード スニペットを追加するライブラリを選択し、説明を入力します。

    [コード スニペット ライブラリ アイテムの選択] ドロップダウン リストに、スニペットを追加できるライブラリが表示されます。 リストには、ライブラリ内のスニペット数も表示されます。

  5. [保存] をクリックします。

スニペットの [その他のオプション] ボタン その他 をクリックすることで、コード スニペットに対して変更を加えることができます。 [その他のオプション] ドロップダウン メニューには、スニペットを編集 ([編集])、廃止 ([廃止])、および削除 ([削除]) できるオプションがあります。

コード スニペットの挿入

[コード スニペット] ウィンドウを使用し、次の手順を実行してコード スニペットを挿入します。

  1. ノートブックを開きます
  2. ノートブック エディターの上部のリボンで、[コード スニペット] をクリックします。
  3. 挿入するスニペットが保存されているコード スニペット ライブラリを参照します。
  4. スニペットの [詳細の表示] をクリックしてコードのプレビューを表示します。
  5. 挿入するコード スニペットを見つけたら、コード スニペット ウィンドウの [追加] ボタン 追加 か、コード プレビュー ウィンドウの [ノートブックに挿入] をクリックし、コード スニペットを新しいセルとしてノートブックに挿入します。

次に、ノートブックに追加できるコード スニペットの例を示します。

# curated code snippet inserted from the Code snippets pane
from arcgis.gis import GIS
def check_org_credits_agol(gis: GIS):
    if "admin" in gis.__dict__:
        credits = gis.admin.credits.credits
        print(f"This ArcGIS Online organization has {credits} credits.")
    else:
        print("Please connect to the ArcGIS Online organization as an administrator to check credits.")

# create a GIS instance to pass to the code snippet function
gis_agol = GIS("https://www.arcgis.com/", "<admin_username>")

# call the code snippet function with your GIS instance
check_org_credits_agol(gis_agol)

Esri コード スニペット

使用可能なすべてのコード スニペットは、Esri によって管理されています。 これらの管理コード スニペットを使用すると、一般的な GIS ワークフローをノートブックに実装できます。 コード スニペットは Python 関数として記述され、ノートブックに挿入し、ノートブックから呼び出すことができます。 コード スニペットは、ノートブックに追加した後に編集できます。

ノートブックに挿入できるコード スニペットには、次のようなものがあります。

  1. GIS administration - 一般的な GIS 管理タスクを実行するコード スニペット。
    注意:

    これらのコード スニペットの多くは、管理者としての接続が必要です。

    • 使用可能なクレジット数の確認 (ArcGIS Online のみ)
    • 特定のユーザーのクレジット数の確認 (ArcGIS Online のみ)
    • レイヤー アイテムのベース サービスの URL を取得
    • 失敗したノートブック タスクのクエリ
    • ポータル ログをクエリ検索して CSV として保存 (ArcGIS Enterprise のみ)
    • ポータルにサイン インして ArcPy を使用
  2. コンテンツ管理 - GIS のコンテンツと、ノートブックのワークスペース ディレクトリのファイルを管理するために使用されるコード スニペット。
    • ワークスペース ディレクトリでジオデータベースをコピー
    • 空のフィーチャクラスを含むファイル ジオデータベースを作成
    • ワークスペース ディレクトリにフォルダーを作成
    • ファイル アイテムをポータルからワークスペース ディレクトリにダウンロード
    • データセットをリスト
    • ファイルをリスト
    • ワークスペース ディレクトリのファイル ジオデータベースを削除
    • ワークスペース ディレクトリのフォルダーを削除
    • ワークスペース ディレクトリにファイルを展開
  3. Data science and analysis - ArcGIS API for PythonArcPy、およびその他の Python ライブラリを使用して、データ サイエンスと解析ワークフローに実装できるコード スニペット。
    注意:

    ArcPy を必要とするコード スニペットを実行するには、高度なノードブック ランタイムを使用します。 ノートブック ランタイムの詳細については、「ノートブックのランタイムの指定」をご参照ください。

    • フィーチャクラスをフィーチャ レイヤーに変換
    • フィーチャクラスを Spatially Enabled DataFrame に変換
    • フィーチャ レイヤーを Spatially Enable DataFrame に変換
    • Spatially Enabled DataFrame をフィーチャクラスに変換
    • URL から画像を表示
    • ワークスペース ディレクトリから画像を表示
    • 欠損値の補完
    • フィーチャクラス内のフィールドをリスト
    • レイヤー内のフィールドをリスト
    • アイテム内のレイヤーをリスト
    • Spatially Enable DataFrame (quickstart) をプロット
    • Spatially Enable DataFrame をクラス閾値レンダラーでプロット
    • Spatially Enable DataFrame をシンプル レンダラーでプロット
    • Spatially Enable DataFrame を個別値レンダラーでプロット
    • Spatially Enabled DataFrame をフィーチャ レイヤーとして公開