空間関数

空間関数を使用すると、高度な空間分析を実行し、テキスト ファイルやスプレッドシートなど他の形式のデータを含む空間ファイルを組み合わせることができます。たとえば、市議会の地区の空間ファイルと、窪みが報告された緯度と経度の座標を含むテキスト ファイルがあるとします。データ ソースの作成時に空間計算を使用してこれらのファイルを結合し、どの地区で窪みの修復に最も時間がかかるかを分析することができます。

起点 - 終点マップの 2 つのデータ ポイントを接続する線を作成することもできます。たとえば、通勤者の移動の開始場所と終了場所を示す公共交通機関データに関するスプレッドシートがあるとします。この場合、空間計算を使用して、通勤者が通っている経路を確認することができます。

Tableau で利用可能な空間関数

AREA

構文AREA(Spatial Polygon, 'units')
出力数値
定義<spatial polygon> の総表面積を返します。
AREA([Geometry], 'feet')

対応している単位名 (計算では 'miles' のように引用符で囲む必要があります):

  • メートル: meters、metres、m
  • キロメートル: kilometers、kilometres、km
  • マイル: miles、mi
  • フィート: feet、ft

BUFFER

構文BUFFER(Spatial Point, distance, 'units')

BUFFER(Linestring, distance, 'units')

  • メートル: meters、metres、m
  • キロメートル: kilometers、kilometres、km
  • マイル: miles、mi
  • フィート: feet、ft
出力ジオメトリ
定義

空間ポイントの場合、半径が <distance><unit> の値で決まる、<spatial point> を中心とする多角形の形状を返します。

ラインストリングの場合、ラインストリングから半径距離内のすべての点を含めることによって形成される多角形を計算します。

BUFFER([Spatial Point Geometry], 25, 'mi')
BUFFER(MAKEPOINT(47.59, -122.32), 3, 'km')
BUFFER(MAKELINE(MAKEPOINT(0, 20),MAKEPOINT (30, 30)),20,'km'))

対応している単位名 (計算では 'miles' のように引用符で囲む必要があります):

  • メートル: meters、metres、m
  • キロメートル: kilometers、kilometres、km
  • マイル: miles、mi
  • フィート: feet、ft

DIFFERENCE

構文DIFFERENCE(Spatial, Spatial)
出力空間ポリゴン
定義2 番目の引数のすべての領域が、重複する領域内の最初の引数から切り取られたときに残る領域の部分を計算します。重複しない領域内の 2 番目の引数の領域を切り捨てます。
DIFFERENCE(Spatial Polygon1, Spatial Polygon2)

空間ポイントやラインではなく、空間ポリゴンとマルチポリゴンがサポートされます。

DISTANCE

構文DISTANCE(SpatialPoint1, SpatialPoint2, 'units')
出力数値
定義指定された <unit> で 2 つのポイント間の距離を返します。
DISTANCE([Origin Point],[Destination Point], 'km')

対応している単位名 (計算では 'miles' のように引用符で囲む必要があります):

  • メートル: meters、metres、m
  • キロメートル: kilometers、kilometres、km
  • マイル: miles、mi
  • フィート: feet、ft
データベースの制限この関数はライブ接続でのみ作成することができますが、データ ソースが抽出に変換された場合も引き続き機能します。

INTERSECTION

構文INTERSECTION (spatial, spatial)
出力多角形
定義最初の引数の領域と重複する 2 番目の引数の領域の部分を計算して返します。
INTERSECTION (Spatial Polygon1, Spatial Polygon2)
空間ポイントやラインではなく、空間ポリゴンとマルチポリゴンがサポートされます。

INTERSECTS

構文INTERSECTS (geometry1, geometry2)
出力ブール値
定義2 つのジオメトリが空間で重なっているかどうかを示す True または False を返します。
サポートされている組み合わせ: ポイント/ポリゴン、ライン/ポリゴン、およびポリゴン/ポリゴン

MAKELINE

構文MAKELINE(SpatialPoint1, SpatialPoint2)
出力ジオメトリ (線)
定義2 点間に線のマークを生成します
MAKELINE(MAKEPOINT(47.59, -122.32), MAKEPOINT(48.5, -123.1))
出発地と目的地のマップを作成するのに役立ちます。

MAKEPOINT

構文MAKEPOINT(latitude, longitude, [SRID])
出力ジオメトリ (点)
定義

<latitude> 列および <longitude> 列のデータを、空間オブジェクトに変換します。

オプションの <SRID> 引数を追加すると、入力として他の投影地理座標を使用できます。

MAKEPOINT(48.5, -123.1)
MAKEPOINT([AirportLatitude], [AirportLongitude])
MAKEPOINT([Xcoord],[Ycoord], 3493)

MAKEPOINT では、自動的に生成された緯度と経度のフィールドを使用できません。データ ソースには座標がネイティブに含まれている必要があります。

SRID は、ESPG 参照系コード(新しいウィンドウでリンクが開く)を使用して座標系を指定する空間参照識別子です。SRID を指定しない場合は WGS84 が使用され、パラメーターは度を単位とする緯度/経度で処理されます。

MAKEPOINT を使用すると、データ ソースを空間的に有効化し、空間結合を使用している空間ファイルと結合することができます。詳細については、Tableau で空間ファイルを結合するを参照してください。

LENGTH

構文LENGTH(geometry, 'units')
出力数値
定義指定された <units> を使用して、<geometry> 内の 1 つまたは複数のライン ストリングの測地パスの長さを返します。
LENGTH([Spatial], 'metres')
ジオメトリ引数にライン ストリングがない場合、他の要素は許可されますが、結果は <NaN> になります。

OUTLINE

構文OUTLINE(spatial polygon)
出力ジオメトリ
定義多角形のジオメトリをライン ストリングに変換します。

塗りつぶしとは異なるスタイルを設定できる、枠線用の別のレイヤーを作成する場合に便利です。

マルチ多角形内の多角形をサポートします。

SHAPETYPE

構文SHAPETYPE(geometry)
出力文字列
定義Empty、Point、MultiPoint、LineString、MultiLinestring、Polygon、MultiPolygon、Mixed、およびサポートされていないものなどの空間 <geometry> の構造を説明する文字列を返します。
SHAPETYPE(MAKEPOINT(48.5, -123.1)) = "Point"

SYMDIFFERENCE

構文SYMDIFFERENCE(spatial, spatial)
出力ジオメトリ
定義最初の引数の領域と重複する 2 番目の引数の領域の部分を計算し、両方の領域から切り捨てます。両方の引数から領域の残りの部分を返します。

SYMDIFFERENCE(Spatial Polygon1, Spatial Polygon2)

VALIDATE

構文VALIDATE(spatial geometry)
出力ジオメトリ
定義空間値内のジオメトリのトポロジの正確性を確認します。ポリゴンの周囲が交差するなどの問題により値を分析に使用できない場合、結果は null になります。ジオメトリが正しければ、結果は元のジオメトリになります。

UNION(VALIDATE([Geometry]))

空間計算の使用

MAKEPOINT を使用した空間データ ソースの作成

MAKEPOINT を使用すると、データ ソースを空間的に有効化し、空間結合を使用している空間ファイルと結合することができます。MAKEPOINT を使用するには、データに緯度と経度の座標を含める必要があります。

  1. Tableau を開き、空間データ ソースに接続します。
  2. [接続] で [追加] をクリックし、2 つ目の非空間データ ソースを追加します。

    2 つのデータ ソースがキャンバスに追加されます。

    ヒント: [結合] ダイアログ ボックスを表示するには、キャンバス上のデータ ソースをダブルクリック (Mac では Control を押しながらクリック) します。

  3. 非空間データ ソースを [結合] ダイアログ ボックスにドラッグします。

  4. [結合] アイコンをクリックします。
  5. 表示される [結合] ダイアログ ボックスで、次のように実行します。
    • 結合タイプを選択します。
    • [データ ソース] より、結合する空間ファイルより空間フィールドを選択します。空間フィールドの隣には地球儀アイコンがあります。
  6. 非空間データ ソースの場合、結合句として [結合計算の作成] を選択します。

    計算は次のようになります。

    MAKEPOINT(Latitude,Longitude)

  7. [OK] を選択します。
  8. [交点] 結合句演算子を選択し、空間分析用のデータ ソースを作成します。

  9. 終了したら、[結合] ダイアログ ボックスを閉じます。

空間結合の詳細については、「Tableau で空間ファイルを結合する」を参照してください。

MAKELINE を使用してビジュアライゼーションを作成する

Tableau Desktop では、Flight Path ワークブックを、ここから入手可能(新しいウィンドウでリンクが開く)な Tableau Public からダウンロードします。

  1. 新しいワークシートに移動します。
  2. [分析] > [計算フィールドの作成] を選択します。
  3. 開いた計算で、次の操作を実行します。
    • 計算フィールドに「Flight Path(フライトパス)」と名付けます。
    • 次の式を入力します

    MAKELINE(MAKEPOINT([Lat],[Lng]),MAKEPOINT([Dest Lat],[Dest Lng]))

    この式は、原点および宛先の都市から緯度座標と経度座標を取り、空間分析のために地理的にポイント化します。これらの座標は、原点と宛先の間に 2 点間の線を作成するために使用されます。

  4. 終了したら、[OK] をクリックします。
  5. 新しい計算フィールドは、[データ] ペインの [ディメンション] に表示されます。他のフィールドと同様に、このフィールドを 1 つ以上のビジュアライゼーションで使用できます。

  6. [データ]ペインで、[Flight Paths]をダブルクリックしそれを視覚的に追加します。これにより、自動的にマップとしてレンダリングされます。
  7. この計算では、線が地球儀の広がりより長くなると、曲線の測地線が自動的に作成されます。

BUFFER を使用してエリアを視覚化する

Tableau Desktop では、Flight Path ワークブックを、ここから入手可能(新しいウィンドウでリンクが開く)な Tableau Public からダウンロードします。

  1. 新しいワークシートに移動します。
  2. [データ] ペインを右クリックして、[パラメーターの作成] を選択します。
  3. 開いた [パラメーター] ダイアログで、次のオプションを設定します。
    • パラメーターに「バッファー距離」という名前を付けます
    • [データ型] を [整数] に設定します
    • [許容値] を [範囲] に設定します
    • [最小範囲] を 100、最大値範囲を 1000、ステップ サイズを 100 に設定します。

  4. 終了したら、[OK] をクリックします。
  5. このパラメーターを使用すると、100 から 1000 マイルまでの範囲でバッファー半径をカスタマイズできます。パラメーターを右クリックし、[パラメーターの表示] を選択します。

  6. [分析] > [計算フィールドの作成] を選択します。
  7. 開いた計算で、次の操作を実行します。
    • 計算フィールドに「バッファー」と名前を付けます。
    • 次の式を入力します

    BUFFER(MAKEPOINT([Dest Lat],[Dest Lng]),[Buffer Distance],"miles")

    BUFFER 計算は、点空間データを受け取り、そのデータを [バッファー距離] パラメーターで決定された半径 (マイル単位) を持つ図形に変換します。

    : BUFFER は点空間データでのみ使用できるため、前の例で示したように、緯度と経度のデータを Makepoint を使用して点に変換しています。

  8. 終了したら、[OK] をクリックします。
  9. 新しい計算フィールドが [データ] ペインに表示されます。他のフィールドと同様に、このフィールドを 1 つ以上のビジュアライゼーションで使用できます。

  10. [データ] ペインで、[Buffer (バッファー)] をダブルクリックして Viz に追加します。これにより、自動的にマップとしてレンダリングされます。
  11. [マーク] カードの [カラー] パネルに [Destination (終点)] をドラッグして、Viz を完了します。

注: ビューが上の図のように表示されない場合は、[マーク] の種類が [円] ではなく [マップ] に設定されていることを確認します。[マーク] の種類に関する詳細については、ビュー内のマークのタイプを変更する を参照してください。

フィードバックをお送りいただき、ありがとうございます。フィードバックは正常に送信されました。ありがとうございます!