最近のアクセス:
QueryViewer のマップ

国や都市などの地理的位置を表示する必要がある場合があります。
GeneXus 17 upgrade 4 以降では、このようなデータを QueryViewer コントロールのマップ上に表示させることができます。
たとえば、以下の画像を参照してください。これは、各国の人口 100 万人あたりの SARS-CoV-2 (Covid-19) の感染者数を表しています。
イメージ:48202.png
このマップでは、Choropleth タイプが使用されています。
次は、以下のマップを参照してください。これは、各国の人口 100 万人あたりの死者数を表しています。
イメージ:48203.png
このマップでは、データを Bubble タイプで表しています。
GeneXus での設定方法
クエリをマップに表示するには、表示する地理的エンティティに応じて、ISO 3166-1 または ISO 3166-2 のコードを含む項目属性を Query オブジェクトで定義する必要があります (代わりに位置情報の座標を使用する場合は、以下を参照してください)。その項目属性の [ Type ] プロパティには、Axis が設定されている必要があります。
イメージ:48205.png
さらに、地理的エンティティに関連する数値データを含む項目属性を 1 つ追加する必要があります。このケースでは、CountryCasesPerMillion です。クエリエレメントの [ Type ] プロパティは Datum に設定する必要があります。
イメージ:48207.png
また、マップに表示するデータの色を指定することもできます。その際、Datum タイプの項目属性の [ ForeColor ] プロパティを設定します。色を指定しない場合は、既定の色が割り当てられます。
以下の例を参照してください。マップ上で複数のデータの値を特定の色で表示するには、[ Conditional styles ] プロパティで設定できます。
イメージ:48224.png
このケースでは、 [ Conditional styles ] プロパティを次のように設定します。
イメージ:48225.png
イメージ:48226.png
QueryViewer コントロールを使用して出力タイプを定義できます。このためには、(Web フォームに挿入した) QueryViewer コントロールの [ Type ] プロパティを Map に設定する必要があります。
イメージ:48204.png
[ Map Type ] プロパティでは、使用するマップを選択します (Choropleth または Bubble)。
イメージ:52508.png
[ Region ] プロパティでは、データを表示するマップのタイプを設定します (World、Continent、または Country)。
イメージ:52509.png
[ Country ] プロパティまたは [ Continent ] プロパティを選択した場合、それぞれのオプションで使用可能なマップが表示されます。
マップタイプは、列挙型ドメイン QueryViewerMapType、QueryViewerCountry、QueryViewerRegion、および QueryViewerContinent を使用してプログラムで設定することもできます。
以下の例を参照してください。国の地域ごとのワクチン接種人口の合計を表示するには、コンボボックスで国およびマップタイプを選択します。次のように設定します。
イメージ:48233.png
このケースで使用されている列挙型ドメインは、QueryViewerRegion ( [ Region ] プロパティに Country を設定)、QueryViewerCountry ( [ Country ] プロパティに初期値を設定)、および QueryViewerMapType (Choropleth および Bubble の MapType の設定を変更) です。
イメージ:48235.png
次の画像を参照してください。コンボボックスで別の国およびマップタイプに変更します。
イメージ:48237.png
位置情報の座標の使用
GeneXus 17 Upgrade 7 以降では、GeoPoint 項目属性を使用して、Bubble マップの正確な座標にバブルを配置できます (この良い例が都市です)。以下のマップは、ウルグアイの各県都の総人口を示しています。
イメージ:49541.jpg
GeneXus 17 Upgrade 8 以降では、Choropleth マップで GeoPoint 項目属性を使用して、各地域に属する地点の値を加算し、マップの各地域に属する地点の合計値を反映させることができます。以下の Bubble マップはアメリカ合衆国の各都市の人口を示しています。
イメージ:49810.png
次に、下の Choropleth マップについて説明します。クエリとデータは前のものと同じです。
イメージ:49811.png
Bubble マップと Choropleth マップで GeoPoint タイプの項目属性を使用するメリットは、Bubble マップの場合は詳細な情報を確認できることです。ここでは、アメリカ合衆国の各都市の人口を確認できています。一方、Choropleth マップで GeoPoint データタイプを使用する場合、地域ごとに最高レベルの情報を確認できます。
また、どちらの場合もクエリ内で、GeoPoint 項目属性、または「=」や「<>」の比較を含むフィルタエクスプレッションに基づいてパラメーターを定義できます。あるいは、データタイプでサポートされる次のメソッドに基づいてパラメーターを定義することもできます: IsEmpty()、IsNull()、FromWKT()、ToWKT()、および Distance()。
この機能は次の DBMS でのみサポートされます: SQLServer、MySQL、Oracle、および PostgreSQL。
考慮事項
1. 使用するライブラリは Echarts です。
2. GeneXus では次の国のマップを提供しています:
  • アルゼンチン
  • ブラジル
  • チリ
  • 中国
  • 日本
  • メキシコ
  • パラグアイ
  • スペイン
  • アメリカ合衆国 
  • ウルグアイ
これらの国のマップのみがサポートされており、QueryViewer ですぐに使用できます (主要な地域区分に対してすべての ISO 3166-2 コードが設定されています)。つまり、上記に含まれていないマップを使用したい場合は、マップをダウンロードして、その関連する区画に ISO 3166-2 コードを追加する必要があります。
その他のマップについて、GeneXus は GitHub リポジトリを提供しています。使用したい場合は、「QueryViewer で提供されないマップを使用する方法」を参照してください。
3. 次の大陸のマップが利用可能です:
  • アフリカ
  • 南極大陸
  • アジア
  • ヨーロッパ
  • 北アメリカ
  • オセアニア
  • 南アメリカ
世界地図も提供しています。

使用可能バージョン

この機能は GeneXus 17 Upgrade 4 以降で利用できます。

動画





サブページ
Created: 21/08/23 23:28 by Admin Last update: 23/05/31 20:53 by Admin
カテゴリ
Powered by GXwiki 3.0