Web アプリで Arcade を使ってみよう!(後編)

Document created by ayako_suzukiesrij-esridist Employee on Jul 18, 2017Last modified by masanobu_hiranoesrij-esridist on Jul 19, 2017
Version 2Show Document
  • View in full screen mode

ArcGIS プラットフォームで使用するために開発された新しい式言語である「Arcade」は、シンプルなコーディングで演算や式の評価を行い、ビジュアライゼーションやラベリングなどを独自に定義することが可能です。

前編では、ArcGIS API for JavaScript で開発したアプリで Arcade を使ったビジュアライゼーションの方法をご紹介しました。後編では、ArcGIS プラットフォームにおける Arcade の共有についてご紹介します。

 

Arcade 式を共有してみよう!

 

これまで、クライアント側の演算を利用したデータの可視化は、独自の JavaScript 関数を使用することで実現してきました。しかし、独自関数を用いた可視化方法は、JavaScript 関数を組み込んだ Web アプリのみで使用され、他のアプリへ共有することはできませんでした。
Arcade は、ArcGIS プラットフォーム共通の式言語として開発されており、アプリごとの実装に頼ることなく、式を Web マップに保存することや、Web、デスクトップ、モバイル アプリで共有することが可能です。

 

それでは、前回も使用した、愛知県の地価調査を表示した Web マップをマップ ビューアーで開いてみましょう。
地価調査レイヤーには、前回と同じ Arcade 式を定義し、前年と比較した価格の上昇率と上昇率の正負を可視化しています。

 

 

では、この Web マップを ArcGIS API for JavaScript を使い Web アプリで読み込んでみます。

 

var webmap = new WebMap({
  portalItem: {
    id: "cbadc1225df14e94bb13ef65e3011916"
  }
});

var view = new MapView({
  map: webmap,
  container: "viewDiv"
});

 

Web マップに定義された Arcade 式は、ArcGIS API for JavaScript によって実行され、レイヤーはマップ ビューアーで Arcade 式を設定したときと同じ表現でアプリ上に可視化されます。

 

 

同じように ArcGIS Pro で Web マップを表示してみましょう。
ArcGIS Pro でも、Web マップに保存された Arcade 式を実行して、同じ表現方法を用いてレイヤーを地図上に可視化することができます。

 

 

このように、Arcade は、Web アプリや ArcGIS Pro で実行することができ、Web マップに保存された Arcade 式を活用することで、どのアプリでも同じようにデータを表現することが可能です。

さらに、ArcGIS Online に登録したレイヤーのビジュアライゼーション タブを使うことで、レイヤーに直接 Arcade 式を保存することもできます。

 

 

ArcGIS API for JavaScript では、レイヤーのアイテム ID を使うことで、保存したビジュアライゼーションとともにレイヤーを読み込むことができます。

 

// アイテム ID を使いポータルからレイヤーを取得、表示する
Layer.fromPortalItem({
  portalItem: {
    id: "a69d73e946a54af0a0f610faa9ca9be7"
  }
}).then(function(lyr){
  map.add(lyr);
})

 

もちろん、ArcGIS Pro でも同じようにレイヤーに定義された Arcade 式を実行することができます。

 

このように、Arcade を使用することで、より簡単に、さまざまな表現方法を用いてデータを地図に可視化することができます。また、ArcGIS プラットフォーム共通の式言語として開発されているので、Web、デスクトップ、モバイルといったさまざまなアプリで共有可能です。

 

関連リンク

 

Attachments

    Outcomes