[後編] APIで取得した情報をスプレッドシートに展開し、Googleマイマップで公開する方法
この記事では、BODIK上に公開されている位置情報系(名称、住所、緯度、経度の情報が記載されていて、場所を示すためのデータ)のオープンデータを、Google マイマップを使って公開するための手順をまとめた記事です。
前編でBODIK-APIからデータを取得し、スプレッドシートに展開する方法を公開しました。この後編では、Googleマイマップに、作成したスプレッドシートのデータを読み込み、公開する手順を紹介します。
スプレッドシートに反映されたデータの確認
前編では、上の画像のように1行目にデータの項目名、2行目以降にデータが入力されている状態のスプレッドシートを作成しました。
ここで重要なのは、きちんと緯度経度情報が入力されているかどうかです。
GoogleMapは優秀なので、住所や名称からも位置を特定できますが、例えば同じ名称の施設があった場合に、他の地域の施設をマッピングしてしまうことがあります。
今回の事例でも「山里公民館」が本部町の同名称の施設にマッピングされるなど、エラーとなることがあり、地図のマッピングには緯度経度を用いる方が正確です。
マイマップを作成する
マイマップの作成も、スプレッドシートの作成と同様にGoogleドライブから新規作成で作成します。
「新規」▶︎「その他」▶︎「Google マイマップ」を選択してマイマップを作成します。
初期状態では「無題の地図」と表記されていますので、ここも「南城市指定緊急避難場所一覧」と名称を変更します。
無題のレイヤの下の「インポート」をクリックして、データを読み込みます。
インポートするファイルの選択でGoogleドライブを選び、先ほど作成したスプレッドシートを選択。
目印を配置する列の選択では、緯度と経度を設定します。
名称や住所でも目印を設定できますが、上で記載の通り同様の名称の他の施設が設定されてしまうこともあるため、一番正確な緯度経度を使います。
マーカーのタイトルとして使用する列は、その場所がどこなのか一目瞭然で理解できるように「名称」を指定すると良いでしょう。
データの読み込みが終わると、スプレッドシートと同じ名前の「南城市指定緊急避難場所一覧」というレイヤーが作成されます。
読み込みエラーが出る場合は、データを確認して修正することもできます。
このように読み込みされれば完成です。
作成したマイマップの公開
上のようにして作成したマイマップは、共有メニューからiframeタグで埋め込むコードを取得したり、このマップへのリンクを取得して公開することが可能です。
地図を共有する際は「このリンクを知っている人なら誰でも表示できる」などの設定を有効にしておきましょう。
リンクのURLは、メールに記載したりLINEなどのメッセージに記載して、他者と共有することができます。LINEのメニューから呼び出すなど、自治体などが住民向けのサービスとして提供することも可能です。
定期的なデータの更新
作成したスプレッドシートのデータは、データ取得関数が実行された時に作成されます。
APIで取得できるデータは定期的に更新されるので、元のデータが更新された場合にスプレッドシートのデータも更新されるような設定を行っておきましょう。
スプレッドシートの拡張機能からAppsScriptを呼び出し、左のメニューから時計のマークをクリックしてトリガーの編集画面を呼び出します。
トリガーは時間ごとや日付ごと、週や月ごとなどで設定ができます。
取得するデータの更新頻度に合わせて、データの取得頻度を設定するようにしましょう。
このようにして作成したデータを南城市のオープンデータのページで「南城市指定緊急避難場所一覧 MyMap版」として公開しています。
(https://odcs.bodik.jp/okinawa-dpf/municipalities/nanjo-city/)
FacebookやTwitterでのシェア機能を始め、目的地までの経路検索(目的地が設定された状態で通常のGoogleMAPが開きます)に使えるほか、アイコン変更などのデザイン、他のレイヤーを追加するなど様々な使い方も可能です。
オープンデータを使ったマイマップによる活用事例などありましたら、事務局までご連絡ください。
このポータルサイトで紹介させていただきます。