OnlineMapMaker logo

GeoPackage ビューアー — GPKGファイルをインタラクティブな地図で表示

.gpkgファイルをアップロードすると、すべてのテーブルがすぐにインタラクティブな地図上に描画されます。任意のポイント、ライン、ポリゴンをクリックして属性を確認し、色を変更し、結果をGeoJSONとしてダウンロードできます。すべてブラウザ内で高速に行え、追加のプログラムは必要ありません。 全画面で開く ↗

Rate this tool:
広告
広告
Loading map…
GISプロジェクトでお困りですか?サービスを見る

GeoPackageファイルとは?

GeoPackageは、地理データを保存するためのオープンなファイル形式です。コンテナとしてSQLiteデータベース形式を使用しているため、1つの.gpkgファイルの中に、ポイント、ライン、ポリゴンとその属性、座標系、さらには背景地図のタイルまでを、すべてまとめて格納できます。この形式は、KMLやWMSを策定したのと同じ標準化団体であるOpen Geospatial Consortium(OGC)によって管理されています。そのため、この仕様に従ったソフトウェアであれば、作成者が誰であっても同じ方法でGeoPackageファイルを読み込むことができます。

ファイル内でジオメトリがどのように保存されるか

GeoPackage内のすべてのポイント、ライン、ポリゴンは、BLOB列に1つのバイナリ値として保存されます。この値は、座標系とオプションのバウンディングボックスを記録した数バイトの小さなヘッダーから始まり、その後にWell-Known Binary(WKB)形式で形状そのものが続きます。これはPostGISをはじめとするほとんどの空間データベースで使われているのと同じバイナリジオメトリ符号化方式です。この選択には意味があります。標準のWKBを読み込む方法を既に知っているツールであれば、その上にあるGeoPackageヘッダーを処理するために数行のコードを追加するだけで済みます。このビューアがブラウザ内でデータを直接デコードしているのも、まさにこの仕組みによるものです。

実際の活用例

GeoPackageは、GIS関連の作業において一般的な標準形式になっています。このビューアが役立つ場面を紹介します。

🧭
フィールド調査データの収集
QFieldやMergin Mapsなどのアプリを使うフィールドチームは、収集したポイント、ライン、ポリゴンを1つのGeoPackageファイルとして書き出します。そのファイルをこのツールで開き、データが正しく取り込まれているかを確認してから、恒久的なGISプロジェクトへ取り込みます。
🗺️
オフラインのモバイルナビゲーションとベースマップ
オフライン地図アプリを開発するエンジニアは、タイルや参照レイヤーをGeoPackageにまとめ、ベクターレイヤーをこのツールで確認してから、デバイス上でオフラインパッケージ全体をテストします。
🌱
環境保全・自然保護のモニタリング
研究者や保護活動のチームは、GeoPackageに保存されたセンサーの位置、調査ルート、生息地の境界などを確認し、さらなる分析を行う前にカバレッジや属性をチェックします。
🔧
公益事業・インフラ資産の管理
公益事業のチームは、電柱、配管、設備の位置情報が入ったGeoPackageを開き、点検や作業指示が出される前に、位置情報や付随する保守記録を確認します。
🏛️
政府機関・防衛関連のデータ交換
地理空間データの納品にGeoPackageを要求または推奨している機関は、このツールを使って、提出されたファイルの内容を正式な審査プロセスに進む前に手早く確認します。
🔁
QGISとArcGIS間のデータ連携
QGISとArcGISの間でデータセットを移動するGISアナリストは、GeoPackageを交換形式として使用し、このツールでファイルをプレビューして、レイヤー、ジオメトリタイプ、属性が転送後も損なわれずに残っているかを確認します。

表示しているデータを書き出す

"Download Table as GeoJSON"をクリックすると、現在読み込まれているテーブルを、ジオメトリがデコードおよび再投影された状態で、標準的なGeoJSONファイルとして保存できます。色などのスタイル変更は地図の表示にのみ影響し、書き出されるファイルには反映されません。GeoJSONは、QGIS、ArcGIS、Leaflet、Mapbox GL JSをはじめ、事実上あらゆる最新の地図作成ツールで問題なく開くことができます。

GeoPackageの内部構造とコアテーブル

GeoPackageはSQLiteデータベースであるため、それを開くということは、単にそのテーブルを読み込むことを意味します。gpkg_というプレフィックスが付いた少数の必須テーブルが、ファイル内の他のすべての内容を記述しています。gpkg_contentsは目次のような役割を果たし、すべてのレイヤーを、その範囲(バウンディングボックス)や最終更新日時とともに一覧表示します。gpkg_geometry_columnsは、どのテーブルのどの列に実際にジオメトリが格納されているか、またどのような形状タイプが格納されているかを記録します。gpkg_spatial_ref_sysは、ファイルが参照する座標系の定義を保存しており、デフォルトで常にWGS84を含みます。ラスターデータについては、gpkg_tile_matrixとgpkg_tile_matrix_setが、gpkg_geometry_columnsがベクターレイヤーを記述するのと同じように、タイルピラミッドの各ズームレベルを記述します。オプションのgpkg_extensionsテーブルには、ファイルが使用する追加の非コア機能が一覧表示されており、読み込み側は、データの解析を始める前に、そのファイルがどのようなものかを常に把握できます。

手順

Step 1: ツールを開く
1
ステップ 1
ツールを開く
地図はまだデータのない世界全体のビューで開きます。上部のツールバーには、アップロード、サンプルデータ、ベースマップの切り替えがあります。サイドバーには、テーブルの一覧、スタイルのコントロール、書き出しボタンがあります。
Step 2: GeoPackageを読み込む
2
ステップ 2
GeoPackageを読み込む
.gpkgファイルをアップロードするか、地図上にドラッグ&ドロップするか、あるいは"Sample Data"をクリックして、用意されたデモファイルですぐにツールを試すことができます。
Step 3: 地図が自動でズームするのを確認する
3
ステップ 3
地図が自動でズームするのを確認する
ツールは最適なテーブル(登録済みのジオメトリレイヤーがあればそれ、なければ緯度経度の列が検出された最初のテーブル)を自動的に選び、その中のすべての行が表示されるように地図をズームします。
Step 4: Tablesリストを確認する
4
ステップ 4
Tablesリストを確認する
サイドバーには、ファイル内のすべてのテーブルが、ジオメトリレイヤー、緯度経度テーブル、位置データを持たないテーブルのいずれかに分類されて一覧表示されるため、ファイルに何が含まれているかひと目でわかります。
Step 5: 必要に応じてテーブルを切り替える
5
ステップ 5
必要に応じてテーブルを切り替える
リスト内の他のタグ付けされたテーブルをクリックすると、現在のテーブルの代わりにそのテーブルが地図上に読み込まれます。
Step 6: ラベルのないテーブルの列を選ぶ
6
ステップ 6
ラベルのないテーブルの列を選ぶ
テーブルの座標の列が自動検出されなかった場合は、小さなパネルが表示され、正しい緯度と経度の列を手動で選択したうえで、"Plot This Table"をクリックできます。
Step 7: 地物をクリックする
7
ステップ 7
地物をクリックする
任意のポイント、ライン、ポリゴンをクリックすると、その行に格納されているすべての属性を示すポップアップが開きます。クリックした形状には明るいハイライトの輪郭が付きます。
Step 8: 色とスタイルを変更する
8
ステップ 8
色とスタイルを変更する
スウォッチを選ぶか、カラーピッカーを使ってテーブルの色を変更し、線の太さと塗りつぶしの不透明度のスライダーで、スタイルの強さを調整します。
Step 9: データをダウンロードする
9
ステップ 9
データをダウンロードする
"Download Table as GeoJSON"をクリックすると、現在読み込まれているテーブルを、あらゆるGISツールやWebマップですぐに使える形式で保存できます。

データの色を変更する

サイドバーにある3つのコントロールを使えば、元のファイルに手を加えることなく、テーブル全体のスタイルを即座に変更できます。

  • 色: スウォッチまたはカラーピッカーから任意の色を選択します。ライン、ポリゴンの塗りつぶしと輪郭、ポイントマーカーにすぐに適用されます。
  • 線の太さ: 輪郭線やラインを、極細のヘアラインから、ポスターにも使えるような太いストロークまで、細くしたり太くしたりできます。
  • 塗りつぶしの不透明度: ポリゴンの塗りつぶしを、薄く透けた色から完全に不透明な色まで、どの程度はっきり見せるか調整できます。

変更はすべて、すでに地図上にあるテーブルにリアルタイムで反映されるため、決定する前に数秒でいくつかの見た目を試すことができます。

GeoPackageにおける座標系

GeoPackageは、必ずしも単純な緯度経度を使う必要はありません。gpkg_spatial_ref_sysテーブルには、地域ごとの図法やWeb Mercatorを含む、任意の座標系を登録できます。それぞれの座標系は、各ジオメトリテーブルに付与された数値のSRS idによって識別されます。このツールを含め、データを一般的なWebマップ上に表示したい読み込み側は、そのSRS idを調べ、座標がまだWGS84でない場合は再投影する必要があります。正しく構成されたGeoPackageには、ビューアが推測に頼ることなく、データを地球上の正しい位置に配置するために必要な情報がすべて含まれています。

GeoPackageは今どのように使われているか

QGISはバージョン3.0以降、GeoPackageをデフォルトの保存形式として採用しており、新しいレイヤーやプロジェクトの推奨形式としてShapefileに取って代わっています。QFieldやMergin Mapsといったフィールドデータ収集アプリは、調査結果をGeoPackageファイルとして書き出します。これは、1つのファイルであればネットワーク接続がなくても、スマートフォンやタブレットとの間で同期しやすいためです。政府の地図作成機関や防衛関連組織は、データ交換においてGeoPackageを要求または推奨するケースが増えており、INSPIREディレクティブに基づくヨーロッパのデータ共有ガイドラインでも、空間データセットの容認された符号化方式として挙げられています。ArcGISでもサポートされている形式であるため、オープンソースと商用のGISワークフローをつなぐ共通の橋渡し役にもなっています。GeoPackageは事前にレンダリングされた地図タイルも保持できるため、電波が届かない環境で動作する必要のあるナビゲーションアプリやフィールドアプリ向けに、オフラインのベースマップ全体をパッケージ化する手段としても広く使われています。

クリックしてすべての属性を確認する

地図上の任意のポイント、ライン、ポリゴンをクリックすると、ポップアップが開き、その行に格納されているすべての列の値、つまり名前、カテゴリ、数値、日付など、生のジオメトリ自体を除くテーブルが保持するあらゆる情報が表示されます。クリックした地物には明るいハイライトの輪郭も付くため、密集していたり重なり合っていたりするテーブルでも、そのポップアップがどの形状に対応しているのか常にはっきりとわかります。

GeoPackageがShapefileに取って代わった理由

20年以上にわたり、Esri Shapefileはベクター地図データを共有する際の標準的な方法でした。しかし、実際には限界があります。1つのShapefileは単一のジオメトリタイプしか保持できず、属性フィールド名は10文字までに制限され、1つのデータセットが.shp、.dbf、.shxなど3つ以上の別々のファイルに分割され、さらに実質的に2GBというサイズ上限もあります。GeoPackageはこれらの問題をすべて解決します。1つの.gpkgファイルには、異なるジオメトリタイプが混在する複数のレイヤーを、長いフィールド名のまま格納でき、実際のほとんどのプロジェクトで問題になるようなサイズ上限もありません。すべてが1つのファイルにまとまっているため、コピーやメール送信、アップロードも簡単です。

複数のテーブルを扱う

1つのGeoPackageには、地図化する価値のあるテーブルが複数含まれていることがよくあります。例えば、調査ポイントのレイヤーと敷地境界のレイヤーが一緒に入っているような場合です。サイドバーのTablesリストには、ファイル内で見つかったすべてのテーブルが、登録済みのジオメトリレイヤー、緯度経度の列が検出されたテーブル、位置データを持たないテーブルのいずれかに分類されて表示されます。タグ付けされたテーブルをクリックすると、それまで表示されていたものの代わりに、そのテーブルが地図上に読み込まれます。

テーブルに、それとわかる名前の緯度経度の列がない場合は、小さなパネルが表示され、正しい2つの列を手動で選択できます。これは、このサイトのCSV to Mapツールと同じ仕組みです。そのため、"y_coord"や"pos_lng"のような珍しい列名を使っているテーブルも見逃されることはありません。

広告
広告

データを地図に表示する2つの方法

都合の良い方法で、GeoPackageをツールに開いてください。

  • アップロードまたはドラッグ&ドロップ: "Upload"をクリックして.gpkgファイルを選択するか、ファイルをファイルブラウザから直接地図上にドラッグします。
  • サンプルデータを試す: "Sample Data"をクリックすると、登録済みのジオメトリテーブルと単純な緯度経度テーブルを持つ小さなデモ用GeoPackageが作成され、読み込まれます。これにより、クリック、色付け、テーブルの切り替えをすぐに試すことができます。

ファイルが読み込まれると、ツールはサイドバーに使用可能なすべてのテーブルを一覧表示し、最適なテーブル(登録済みのジオメトリテーブルがあればそれ、なければ緯度経度の列が認識できる最初のテーブル)を自動的に描画し、そのデータに合わせて地図をズームします。リスト内の他のテーブルをクリックすると、そちらに切り替えられます。

GeoPackage規格の簡単な歴史

OGCは2014年、GeoPackage符号化規格の最初のバージョンを採用しました。これは、地理データをより良い方法でまとめる方法を模索していたGISベンダーと政府機関のグループによる、数年にわたる作業の成果です。目標は、専用ドライバや有料ライセンスを必要とせず、通常のSQLを使ってどんなアプリケーションでも読み書きできる形式を作ることでした。最初のリリース以降、この規格は複数回改訂され、オプションの拡張機能を通じて、リンクされた属性テーブルやタイル化された標高データなどのサポートが追加されています。それでいてコアとなるファイル構造は安定したまま保たれているため、古いソフトウェアでも新しいファイルを読み込むことができます。

広告
広告

動画で見る — 1分でわかるGeoPackage ビューアー

読むより見るほうが早いという方のために、短い動画を用意しました。GeoPackageファイルのアップロード、レイヤーの地図表示、そして表示内容のエクスポートまで、一通りの流れを紹介しています。

よくある質問

どのくらいの大きさのファイルを読み込めますか?
100 MBまでのファイルに対応しており、1つのテーブルにつき最大5,000行まで読み込まれます。テーブルにそれ以上の行がある場合、ツールは何行が表示され、何行が省略されたかを知らせます。
GeoPackageとShapefileの違いは何ですか?
Shapefileは実際には、.shp、.dbf、.shxなど複数の個別ファイルの集まりで、保持できるジオメトリタイプは1種類のみ、フィールド名の長さにも制限があります。一方GeoPackageは1つのファイルで、複数のレイヤーや複数のジオメトリタイプ、長いフィールド名を保持でき、ほとんどのプロジェクトで問題になるようなサイズ上限もありません。
GeoPackageファイルとは、簡単に言うと何ですか?
.gpkgという拡張子を持つ1つのファイルで、ポイント、ライン、ポリゴンといった地図データと、その属性、座標系を保持しています。SQLiteデータベース形式の上に構築されているため、GISソフトウェアだけでなく、通常のSQLツールでも開くことができます。
GeoPackageとSpatiaLiteの違いは何ですか?
どちらもSQLiteファイルの中に空間データを保存しますが、ジオメトリの内部形式もメタデータテーブルも異なります。GeoPackageは、小さなヘッダーと標準のWKB符号化を組み合わせて構築されたOGC標準です。SpatiaLiteはそれより古く、独自のバイナリジオメトリ形式を持つ別系統の拡張機能です。このツールはGeoPackageファイルを専門に読み込みます。SpatiaLiteや通常のSQLiteファイルは、当サイトのSQLite ビューアーツールで読み込めます。
GeoPackageファイルはどのようなソフトウェアで開けますか?
QGIS、ArcGIS、ほとんどの最新のGISライブラリ、そしてGDAL/OGRをベースにしたあらゆるツールでGeoPackageファイルを開くことができます。中身は単なるSQLiteデータベースであるため、SQLiteを扱えるツールであれば、生のテーブルを直接読み込むこともできます。
GeoPackageは複数のレイヤーを保持できますか?
はい。1つの.gpkgファイルには、通常、複数のテーブルが含まれており、それぞれが独立したレイヤーで、ジオメトリタイプが異なっている場合もあります。サイドバーのTablesリストには、ファイル内で見つかったすべてのレイヤーが表示されるため、それらを切り替えて使うことができます。
GeoPackageはベクター形状だけでなく、ラスターや画像データにも対応していますか?
はい。GeoPackage規格は、オフラインベースマップ用の事前レンダリング済みタイルなど、タイル化されたラスターデータの保存方法も定義しています。このビューアはベクターテーブル(ポイント、ライン、ポリゴン)に焦点を当てており、ラスタータイルのテーブルはここでは描画されません。
自分のファイルをアップロードしなくても、このツールを試せますか?
はい。"Sample Data"をクリックすると、登録済みのジオメトリテーブル1つと単純な緯度経度テーブル1つを持つ小さなデモ用GeoPackageがその場で作成・読み込まれます。これにより、自分のファイルをアップロードする前に、テーブルの切り替え、ポップアップ、色付けの仕組みを確認できます。
アップロードしたGeoPackageはサーバーに送信されますか?
いいえ。ファイルの読み込み、解析、表示はすべて、WebAssembly版のSQLiteを使って、お使いのブラウザタブの中だけで行われます。どこにもアップロードや保存はされないため、個人情報や機密性の高い位置データを扱う場合でも安心して使用できます。
どのような座標系に対応していますか?
WGS84(単純な緯度経度)とWeb Mercatorは直接処理されます。それ以外の座標系については、ツールがファイル内のgpkg_spatial_ref_sysテーブルに保存されている定義を読み取り、可能な場合はWGS84に再投影します。座標系を解決できない場合は、元の座標がそのまま表示されます。
広告
広告

その他のおすすめツール

Map tiles © OpenStreetMap contributors and Protomaps (hosted by KONAKTIVE), CARTO, Esri (satellite). Database reading powered by sql.js. Map rendering by Leaflet. All file reading and rendering is local, no data is uploaded to any server.

Muhammad Gulraiz Khan、GIS専門家、KONAKTIVEおよびOnlineMapMaker.comの創業者

著者について

Muhammad Gulraiz Khan

GIS専門家・コンサルタント、KONAKTIVE創業者

Muhammad Gulraiz Khanは、エネルギー分野向けに地理空間ソリューションを提供してきた10年以上のプロフェッショナル経験を持つGIS専門家です。世界銀行、国際金融公社(IFC)、USAIDのプロジェクトにも携わってきました。彼はプロフェッショナル品質の地図作成ツールを誰もが無料で利用できるようにするため、OnlineMapMaker.comを立ち上げました。

広告
広告