QGISでOpenStreetMapの数値地図を表示する

2019年10月16日

前回、OpenStreetMapから数値地図データを取得する方法を紹介しましたが、取得した数値地図データは独自に開発したGIS「JSMAP2」で読み込んでいます。また、読み込んだ数値地図データが正しく表示できているかを確認するために、「QGIS」というGISアプリケーションを使用しています。

QGISは、とても多機能なGISアプリケーションです。正直言ってJSMAP2よりもずっと多機能なGISであり、一般の方が地図操作を行うなら、QGISを使うと良いでしょう。

今回、従来使っていた2.14.2ではなく3.4を使ってみました。すると、簡単に使えていたOpenStreetMapの数値地図ファイルの読み込みができなくなっていました。バグが多かったのが原因のようですが、新たに対応するプラグインも、違った問題がありました。簡単に紹介します。

1.QGISのダウンロード

QGISは、以下のリンクからダウンロードできます。

2.QGISのインストール

QGIS本体のインストールは手順通り行ってください。しかし、QGIS本体だけではOpenStreetMapの数値地図データを読み込めないようです。そのため、「QuickOSM」というプラグインをインストールします。

メニューの「プラグイン」「プラグインの管理とインストール」を選んで、表示されたダイアログから「QuickOSM」を選んでインストールしてください。

3.QGISにOpenStreetMapの数値地図データを読み込む

Overpass APIを使ってOpenStreetMapの数値地図を取得した場合、ファイル名が「interpreter」です。これを、「適当な名前.osm」に変名してから読み込ませてください。

メニューの「Vector」「QuickOSM」を選択します。そして表示されたダイアログで、「OSM File」タブを選択します。ここで、OSMファイルを指定します。

次に、読み込むデータの種別を指定します。例では「Line」のみを指定しました。そして「Open」ボタンを押せば、QGISにOSMファイルが読み込まれます。

4.処理が遅い

実際に読み込ませてみると、処理に時間が掛かりました。東京の道路地図を読み込ませたのですが、高速道路ならともかく、住宅街などの細い道路を読み込ませると処理が終わりません。これは、従来のQGISではなかった現象です。

QGISのver2.xでOpenStreetMapの数値地図データを読み込む場合、一度データベースにデータを取り込んでいました。そうしないとキーによる検索ができないため、遅くなるからだと思います。同様に私のJSMAP2でも、緯度・経度のノードをデータベースに取り込んでから、キーを使って読み込んでいます。恐らくQuickOSMでは、そのような処理を行わないため、遅いのではないでしょうか。

ともかく私のマシンでは、QGISの3.x系でのOpenStreetMapの数値地図データ読み込みが実用に耐えません。違うマシンにインストールしてある2.14.2を使って行こうと思います。

※最新版では、処理の遅さが気になりません。大丈夫です