2017年12月17日

QGIS3からはGeopackageが使いやすいぞ!脱シェープファイル!

注意!この記事はかなり古い情報です。現在のQGISとは操作方法が違いますので注意してください


この記事は、FOSS4G Adventカレンダー2017に参加した記事です。

 2017年の12月中にQGIS3.0がリリースされるという噂があり、毎日のようにQGISのオフィシャルホームページをチェックしていますが、2017年12月17日現在ではまだリリースされていません。12月中にリリースされれば、年末年始はサワサワ触りまくってやるのにと思っていましたが・・・。

 そこで、予行演習も兼ねて、OSGeo4wで利用できる開発版の2.99(内容はほぼ3.0と同じと思われる)を最近触ってみています。

(これ以降はQGIS2.99をQGIS3.0として書いていきます。)


QGIS3ではGeopackageがデフォルトになる?


 ファイルの入出力や、プロセッシングツールなどを見ていると、いままでは、シェープファイルがデフォルトになっていましたが、QGIS3.0ではGeopackageがデフォルトになっています。

 ここからわかるように、QGISもやっと脱シェープファイルを考えているのだと思われます(多分ですよ、多分)。

 昨年のFOSS4G AdventカレンダーでもGeopackageの記事がありましたが、QGIS2ではまだまだ使える状況ではありませんでした。

 QGIS3からは、GeopackageをQGISのデフォルトのファイル形式としましょうということなのでしょう。



Geopackageってなに?


 Geopackageとは、「オープンで標準に準拠したプラットフォームに依存しない、移植性の高い自己記述型のコンパクトなフォーマット」ということで、SQliteデータベースに様々なGISデータを格納できるファイルです。私自身はSpatialiteとどこが違うのかはよくわかっていませんが、Geopackageは、ベクタデータはもちろん、ラスタや、Mbtilesなどさまざまなデータを格納でき、ひとつのファイルにすることができます。

 ArcGISでもArcGIS10.2.2からGeopackageをサポートしているとのことです。QGISで作成したものがArcGISで利用できるかは不明ですが、多分大丈夫なような気がします。



Geopackageにデータを追加する


 QGIS3では、ブラウザパネルのGeopackageファイルにレイヤパネルからレイヤをドラッグ&ドロップするだけで、Geopackageにデータを追加できます。(Geopackageファイルのパスに2バイト文字が含まれるとエラーになります)

 ラスタレイヤもドラッグ&ドロップで追加することができます。

01.png


 レイヤを名前をつけて保存することでもGeopackageにデータを保存できます。

(名前をつけて保存したレイヤは、ブラウザパネルの「Geopackage」で表示されない場合があるようです)

02.png


 Geopackageファイルには、様々なGISデータを格納できるので、地図を作るためのファイルの数を非常にコンパクトにすることができます。

 今まではシェープファイルやラスタファイルを複数使って地図を作った場合、数十個のファイルを必要としていましたが、Geopackageでは一つでいいのです。

 ファイルサイズ自体はそれほど変わらないと思いますが、ファイル数が少なくなるのはいいことです。

03.png



Geopackageにはレイヤスタイルも保存できる


 Geopackageには、レイヤスタイルを保存することができます。Geopackageから追加したレイヤのレイヤプロパティを表示して「シンボロジー」の「スタイル」ボタン→「スタイルを保存」に「データベースに保存(Geopackage)」があります。

04.png


 ここでスタイルをGeopackageファイルの保存すると、そのレイヤのデフォルトのスタイルとして登録することもできます。

QGIS2.99では、スタイルを保存するとQGISが落ちますが、保存はされているようです)



まとめ


 QGIS2までは、シェープファイルがデフォルトのようだったので利用していましたが、フィールド名の文字数の縛りや、文字コードの問題、ファイルの数が多いなどいろいろな問題がありました。これが今後はGeopackageで解決していけば、非常に良いことだと思います。

 シェープファイルには、安室奈美恵と一緒に引退していただき、新たな世代にその座を譲っていただきましょう。

 QGIS2.99では日本語だとうまく行かなかったり、Geopackageにラスタを追加すると、削除できなかったりするようなので、もうすこし熟成が必要かもしれませんが、今後さらに進化していくことが楽しみです。



ラベル:QGIS
posted by kouichi at 15:08| Comment(4) | QGIS | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
こんばんは。いつも本ブログ、並びに書籍にお世話になっております。

Geopackageによるシェープファイルの様々なデメリットが無くなるのはうれしいですね。しかし、データの高度な編集にSpatialiteやSQLiteなどのデータベースの知識が必要になってくるのでしょうか…
Posted by shi at 2017年12月19日 18:33
コメントありがとうございます。
Geopackageへのデータの登録や削除はブラウザパネルで簡単に行えるので、データベースの知識が無くても大丈夫だと思います。
もう少し機能の成熟は必要だと思いますが、QGISで全てできますので、使いやすいと思います。
Posted by きた at 2017年12月20日 11:44
ご回答いただきありがとうございます。
操作の難度にあまり変化がなく、可用性や保守性が上がるのは嬉しいことですね。あとは実際に使えるようになるまで、どれほど待つことになるか…でしょうか。
Posted by shi at 2017年12月22日 22:11
Geopackageというものがあるのですね。勉強になりました。
私もフィールド名の文字数制限や、文字コードの問題に悩まされていたので
このまま、脱シェープファイルになるといいですね。
Posted by えんなお at 2018年03月12日 10:07
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

×

この広告は90日以上新しい記事の投稿がないブログに表示されております。