はじめに
皆さまはUber H3ってご存知ですか?(私はつい先日知ったところです…GISに関わる身としてまずい😱)
なんぞや的なところはこちらの記事を参照させていただきました!
なんだかメリットが沢山あるらしいですし、研究でも使われているとのことので、とりあえずQGISでメッシュを表示することだけでも試してみたいと思いました。
そこで、QGISならきっとプラグインがあるはず!と思って調べたらちゃんとありましたので、そちらを利用することにしました。
※2023-04-18 追記
下記記事ではWindows環境でのTipsを紹介いただいていますので、Windowsの方は下記記事をご参照ください!
H3 Toolkit プラグインをインストールする
【作業環境】
- macOS Monterey 12.6.2 (intel)
- QGIS 3.22.14
- Python 3.8.7
- pip 22.3.1 ※下記手順でアップデート後のバージョン
H3ヘキサゴンメッシュを作成するプラグインはこちらのH3 Toolkitです!
これをインストールすればサクッと作れるのかと思いきや、注意書きに、
NOTE: The official H3 Library ('h3' Python package) is not shipped with this plugin and has to be installed separately. The plugin detects if the package is missing and offers basic guidance on how to install.
↓
(Deepl翻訳)
公式のH3ライブラリ('h3' Pythonパッケージ)は、このプラグインに同梱されていないため、別途インストールする必要があります。このプラグインは、パッケージが欠落しているかどうかを検出し、インストール方法に関する基本的なガイダンスを提供します。
とあり、h3
パッケージをインストールする必要があるとのこと。
まずはh3パッケージをインストールする
それでは、QGISのPython環境にh3パッケージをインストールしましょう!
(初めはQGISのPythonコンソールからpip install h3
と試していました…😅)
QGISで実行しているPythonの場所を確認する
こちらのQ&Aを参考にQGISで実行しているPythonの場所を確認し、私の環境では下記のディレクトリにありました。
/Applications/QGIS-LTR.app/Contents/MacOS/bin/python3
QGISのPython環境にpipを使ってインストール
h3パッケージをインストールする前に、QGISのPython環境のpipをアップデートします。
ターミナルで下記のコマンドを実行します。
/Applications/QGIS-LTR.app/Contents/MacOS/bin/python3 -m pip install --upgrade pip
※上記のコマンドの参考→リンク
pipをアップデートしたらお目当てのh3パッケージをインストールします!
先ほどと同様に、ターミナルで下記のコマンドを実行します。
/Applications/QGIS-LTR.app/Contents/MacOS/bin/python3 -m pip install h3
インストールできたか確認しましょう。
ターミナルで下記のコマンドを実行します。
/Applications/QGIS-LTR.app/Contents/MacOS/bin/python3 -m pip list
h3
がインストールされていることが確認できました。
Package Version
--------------------- ------------
access 1.1.1
affine 2.3.0
appdirs 1.4.4
attrs 19.3.0
.
.
.
GDAL 3.2.1
geopandas 0.8.1
giddy 2.3.3
h3 3.7.6
.
.
.
H3 ToolkitをQGISでインストール
やっとH3 Toolkitの登場です!
QGISを立ち上げて、上部メニューバーのプラグイン
からプラグインの管理とインストール
に進みます。
検索窓にH3
と入力するとH3 Toolkitが見つかるので、インストール
ボタンをくりっくして インストールしましょう!
(画像ではインストール済みなのでアンインストール・再インストールになっています)
これでインストール完了です!
ヘキサゴンメッシュを作ってみる
当初の目的であったH3ヘキサゴンメッシュを作ってみましょう!
プロセシングツールボックスの中にH3というツールが登場しているので、そこから作成します。
プロセシングツールボックスを表示していない場合は、上部メニューバーのプロセシング
からツールボックス
を選択すると表示できます!
(最初はツールバーにアイコンが登場するかと見つからなくて困っていました…)
Create H3 gridをクリックすると次のようなメニューが表示されます。
設定が必要なのは2箇所で領域
とResolution
です。
まず、領域
は文字通りメッシュを作成する範囲を指定します。
選択肢としては3つで、
- レイヤから計算
- 例えば、市町村界のレイヤを指定したり、特定のエリアのレイヤを指定して、そのエリアをベースに作成します。
- キャンバス領域を仕様
- 画面内全てにメッシュを作成します。
- キャンバスに描画
- これを選択したあとにキャンバス内に範囲指定すると、その範囲内にメッシュが作成できます。
次に、Resolution
で16の解像度から選択します。
ズームレベルのようなもので、数字が上がるほど六角形の一辺の距離が短い(=解像度が高い)メッシュが作成できます。
2つとも設定が完了したら実行
をするとメッシュが作成されます!
会社周辺にメッシュを作成してみる
今回は試しに、会社があるエリアを適当に四角で囲ったレイヤを作成して、その範囲内に作成するように指定してみました。
結果はこんな感じで、今回の目的であるH3ヘキサゴンメッシュが無事に作成できました!
メッシュにはちゃんとインデックスが付与されています。
せっかくヘキサゴンメッシュを作成できたので、次はこれを使った解析をしてみたいと考えています!