学ぶこと
Pythonではじめる地理空間情報
地理空間情報データ
インタラクティブなマッピングと地理空間分析を行うための無料でオープンソースの Pythonパッケージ ユーザーが最小限のコーディングで地理空間データを分析および視覚化可能にしたもの Google Colab、JupyterNotebook環境で動作 テネシー大学 地理学部 准教授のQiusheng Wu, PhDが開発 foliumやipyleafletなどのライブラリをベースに構築 geemapは、Google Earth Engine (GEE) が動作 leafmapは、geemapのスピンオフでgeemapのGEEなしのバージョン
1. leafmapとは¶
Leafmapは、Google Colab、JupyterNotebook環境で地図作成と地理空間分析を行うためのPythonパッケージです。
背景地図を自由に変えられる
初期表示位置やズームレベルなど細かく設定できる
COGなど、最新のクラウドネイティブなラスター形式も読める
GeoPandasのGeoDataFrameが読めるので、つまりほとんどの形式のベクターデータが読める
地物の属性情報は当然みれる
HTMLファイルを書き出せる
地物を画面上で書いて、出力できる
mapbox style specっぽい書き方でスタイリングできる
地図上からベクターデータにクエリできる
複数のレイヤーを追加できる
WhiteboxToolsを取り込んでおり、高度なGIS処理ができる
バックエンドとしてkepler.glやpydeckを選択することもできる
これらをほぼコーディングせずに行える
2. leadmapのサイト¶
leafmapを使って手軽にマップ表示をしてみます。
Leafmapは、foliumやipyleaflet(インタラクティブマップ作成用)、WhiteboxToolsやwhiteboxgui(地理空間データ分析用)、ipywidgets(インタラクティブなGUIデザイン用)などのオープンソースのパッケージをベースに構築されています。
3. 演習:Google Colab ファイル¶
対話型マッピングのためのPythonパッケージであるleafmapの紹介
leafmapでベースマップを使用する
Cloud Optimized GeoTIFF(COG)とSpatioTemporal Asset Catalog(STAC)の利用について
Using Cloud Optimized GeoTIFF (COG) and SpatioTemporal Asset Catalog (STAC) (notebook)
Cloud Optimized GeoTIFF(COG)のバーチャルモザイクの作成
Creating a virtual mosaic of Cloud Optimized GeoTIFFs (COG) (notebook)
leafmapを使ったローカルラスターデータセットの読み込み
Loading local raster datasets with leafmap (notebook)
地図にカスタム凡例を追加する
Adding custom legends to the map (notebook)
地図にカスタムカラーバーを追加する
Adding custom colorbars to the map (notebook)
LeafmapでWhiteboxToolsを使用する
Using WhiteboxTools with leafmap (notebook)
CSVをポイントに変換する
Converting CSV to points (notebook)
ローカルベクターデータ(shp, geojson, kmlなど)を地図に追加する
Adding local vector data (e.g., shp, geojson, kml) to the map (notebook)
複数の地図を同時に可視化するリンクマップの作成
Creating linked maps for visualizing multiple maps simultaneously (notebook)
1行のコードで分割地図を作成する
Creating a split-panel map with a single line of code (notebook)
1行のコードでGeoPandas GeoDataFrameを地図に追加する。
Adding a GeoPandas GeoDataFrame to the map with a single line of code (notebook)
PostGISデータベースから地図にデータを追加する
Adding data from a PostGIS database to the map (notebook)
OpenStreetMapのデータを1行のコードで地図にダウンロードする。
Downloading OpenStreetMap data to the map with a single line of code (notebook)
HERE Map Widget for Jupyterをプロットのバックエンドとして使用する。
Use HERE Map Widget for Jupyter as plotting backend (notebook)
地図にベクタータイルレイヤーを追加する
Adding vector tile layers to the map (notebook)
ポップアップ属性を持つポイントレイヤーを地図に追加する
Adding a point layer with popup attributes to the map (notebook)
地図をhtmlファイルとして保存する
Saving maps as a html file (notebook)
プラネットグローバルマンスリーとクオータリーモザイクの追加
Adding Planet global monthly and quarterly mosaic (notebook)
タイムセリーズインスペクタをワンクリックで使用する
Using timeseries inspector with one click (notebook)
タイムスライダーを使った時系列画像の可視化
Using time slider for visualizing timeseries images (notebook)
1行のコードでカラーマップを作成する
Creating colormaps with a single line of code (notebook)
csvからヒートマップを作成する
Creating heat map from csv (notebook)
カラーバーと地図タイトルを使った人口ヒートマップの作成
Creating a population heat map with a colorbar and map title (notebook)
kepler.glプロッティングバックエンドを利用したインタラクティブマップの作成
Creating an interactive map using the kepler.gl plotting backend (notebook)
ベースマップギャラリーの作成
Creating a basemap gallery (notebook)
1行のコードで地図を公開
Publishing maps with a single line of code (notebook)
pydeckプロッティングバックエンドを使用する
Using the pydeck plotting backend (notebook)
米国国勢調査のデータを使用
Using U.S. Census data (notebook)
xyzservicesでベースマップを検索する
Searching basemaps with xyzservices (notebook)
ローカル ラスター データセットと Cloud Optimized GeoTIFF (COG) の読み込み
Loading local raster datasets and Cloud Optimized GeoTIFF (COG) (notebook)
地図に画像をオーバーレイ表示する
Adding image overlay to the map (notebook)
xyデータからポイントを追加する
Adding points from xy data (e.g., CSV, Pandas DataFrame) (notebook)
xyデータからサークルマーカーを追加する
Adding circle markers from xy data (e.g., CSV, Pandas DataFrame) (notebook)
地図にラベルを追加する
Adding labels to the map (notebook)
Planetary Computer STACアイテムを地図に追加する
Adding Planetary Computer STAC item to the map (notebook)
plotlyのプロッティングバックエンドを使用する
Using the plotly plotting backend (notebook)
インスペクターツールを使った画素値の取得
Getting pixel values using the Inspector tool (notebook)
インタラクティブなplotlyツールバーGUIを使用する
Using the interactive plotly toolbar GUI (notebook)
ラスターGUIによるCOG/STACアイテムの読み込み
Loading COG/STAC items using the raster GUI (notebook)
クラウド最適化GeoTIFF(COG)の作成
Creating Cloud Optimized GeoTIFF (COG) (notebook)
ベクターデータ内の位置や特徴を検索する
Searching for locations and features in vector data (notebook)
ベクターデータの属性テーブルをコーディングなしで開く
Opening vector data attribute table without coding (notebook)
コーディングなしでインタラクティブにベクターデータを作成
Creating vector data interactively without coding (notebook)
既存のベクターデータをコーディングなしでインタラクティブに編集
Editing existing vector data interactively without coding (notebook)
numpyの配列をCOGに変換する
Converting numpy array to COG (notebook)
たった1行のコードでLiDARデータを3Dで可視化する
Visualizing LiDAR data in 3D with only one line of code (notebook)
foliumで分割地図を作成する
Creating a split-panel map with folium (notebook)
カスタムアイコンでマーカークラスタを作成する
Creating a marker cluster with custom icons (notebook)
マスクによる画像の切り抜き
Clipping an image by mask (notebook)
NetCDFデータの可視化
Visualizing NetCDF data (notebook)
netCDF (Network Common Data Form) は、気温、湿度、気圧、風速、方向などの科学的な多次元データ (変数) を格納するためのファイル形式
多様な分類体系を持つコレポリスマップの作成
Creating choropleth maps with a variety of classification schemes (notebook)