--- tags: pycon, memo --- PyConJP 2022 - Pythonではじめる地理空間情報 === PyConJP 2022 --- * [PyCon JP 2022](https://2022.pycon.jp/) * [timetable](https://2022.pycon.jp/timetable) * [PyCon JP 2022 カンファレンス](https://pyconjp.connpass.com/event/255827/) * [PyCon JP 2022 Official Party](https://pyconjp.connpass.com/event/261187/) ### for speaker * [2022 スピーカー向け連絡事項](https://docs.google.com/document/d/1kIHg0supwUIyqlOwIFqIu_68p0mv-dHDaOkRmsQNNII/edit#heading=h.g7sy3d9xeahs) * [スピーカー向け読み上げ事項](https://docs.google.com/document/d/1kIHg0supwUIyqlOwIFqIu_68p0mv-dHDaOkRmsQNNII/edit#heading=h.xhk0z4pyg05u) * [CfP - pretalx](https://pretalx.com/pyconjp2022/) - [pretalx - homata](https://pretalx.com/pyconjp2022/me/submissions/) ### General * Title: Pythonではじめる地理空間情報 * Date: 2022-10-15, 13:50–14:20 * Session: pyconjp_5 * url: https://2022.pycon.jp/timetable?id=PCBGF8 * Document: [Google Slide](https://docs.google.com/presentation/d/1544fqbVl0GoHZFx8KTaJmeX4gCjQEzoJd39Q3OOWgU0/edit#slide=id.p) ### Who 小俣 博司 (Hiroshi Omata) オープン川崎 一般社団法人シビックテックジャパン Geo+Python JP ### Abstract 都市のデジタル化において、その根幹をなす街づくりのためのデータ化が進み、日本全国の3D都市モデルの整備・活用・オープンデータ化が進んでいます。そこで、Google ColaboratoryやJupyter Notebookを使った、3D都市空間モデルの可視化や地理空間情報の表現方法のご紹介をします ### トーク詳細 / Description 都市の3Dデータを扱うことが多くなってきましたが、地理空間情報の可視化はJavaScriptなどのフロントサイドで処理をすることが多いようです。 今回は、PythonとGoogle ColaboratoryやJupyter Notebookを使った、都市のデータ分析にも使える地理空間情報の可視化手法をご紹介します。 トーク内では下記の技術と都市データのご紹介をします。 予定稿 (全体:30分) * 自己紹介 (1分) * 本セッションの概要説明 (1分) * はじめてのマップ表示 (10分) * leafmapの設定 * leafmapでベースマップを使用する * 1行のコードでGeoPandas GeoDataFrameを地図に追加する。 * 2.5D地図を表示 * はじめての3D空間データ (10分) * 点群データとは? * 3次元データのファイル形式 * 点群データのツール * 点群データを使った3Dデータの可視化 * 地理空間情報データ (5分) * Project PLATEAUの紹介 * G空間情報センターの紹介 * まとめ (3分) ### この題材を選んだ理由やきっかけ / Why did you chose this topic? 日本全国の都市モデルの整備・オープンデータ化が進み、様々な地理空間情報のデータが公開され始めています。それに伴い、地理空間情報データを扱う周辺の技術の更新されています。 しかしながら、地理空間情報データの可視化はJavaScriptなどのフロントサイドで処理をすることが多くPythonを使った事例が少ないように感じています。 そこで、Pythonを使ったデータの可視化方法の紹介と、地理空間情報データのご紹介をしたいと思いました。 ### オーディエンスに求める前提知識 / Prior knowledges speakers assume the audience to have * 基本的なPython 3の文法知識 * Google ColaboratoryやJupyter Notebookの使用方法 * 必須ではないが、地理空間情報の知識 ### Knowledges and know-how the audience can get from your talk * Google ColaboratoryやJupyter Notebookで地理空間情報データや3Dモデルの可視化の手法 * GoogleMap以外の様々なマップ表現 * 点群データを使った3D空間データの可視化 * Leafmapを使った、手軽でリッチなマップ表現方法 * 日本全国で整備されている、地理空間情報のデータの取得方法 ### 参考 * [AWSではじめる位置情報アプリケーション - Google スライド](https://docs.google.com/presentation/d/e/2PACX-1vQijJ57FKvxob2T4GDQd3vpUbwcSPRSwV4Ns2ee0Lwmp1_Cbzjzu6ETsGiPtOLwDGiYpZd4uehk8EBK/pub?start=false&loop=false&delayms=3000&slide=id.g13bb83620f1_0_164) * [SpeakerDeck](https://speakerdeck.com/dayjournal/awsdehazimeruwei-zhi-qing-bao-apurikesiyon) * [地理空間情報・文化財のためのAWS](https://speakerdeck.com/nokonoko1203/di-li-kong-jian-qing-bao-wen-hua-cai-notamenoaws) * [漫画で使えそうな背景画像をblenderを使って作ってみた!](https://speakerdeck.com/nokonoko1203/man-hua-deshi-esounabei-jing-hua-xiang-woblenderwoshi-tutezuo-tutemita) Conda --- * [Conda Document](https://docs.conda.io/en/latest/) * [pyenv + conda の環境構築メモ](https://qiita.com/toshi_machine/items/7e4942dc34ef4bdbe4b1) * [【メモ】Pyenv + anacondaで仮想環境構築](https://qiita.com/kotarouetake/items/8805563b0609174dfcdf) ### init ``` $ pyenv install -l | grep anaconda $ pyenv install anaconda3-2022.05 $ pyenv local anaconda3-2022.05 $ pyenv versions $ python -V Python 3.9.12 $ conda update -n base -c defaults conda $ conda create -n geo $ conda init bash terminalを再起動 $ conda activate geo ``` ``` pyenv install -l | grep anaconda pyenv install -l | grep miniconda pyenv install anaconda3-2022.05 pyenv install miniconda3-4.7.12 ``` ``` pyenv versions pyenv global anaconda3-2022.05 pyenv global miniconda3-4.7.12 ``` ``` pyenv local anaconda3-2022.05 pyenv local anaconda3-2020.07/envs/[仮想環境名] pyenv local anaconda3-2020.07/envs/geo ``` ``` $ conda init bash terminalを再起動 ``` ``` $ conda create -n <ENV_NAME> $ conda create -n [仮想環境名] python=[pythonのバージョン] [installしたいライブラリ] [installしたいライブラリ] ... $ conda create -n geo $ conda create -n geo python ``` $ conda activate geo $ conda deactivate $ conda update -n base -c defaults conda ``` #### leafmap ``` conda install -c conda-forge leafmap conda install -c conda-forge mamba mamba install -c conda-forge pygis conda install pip pip install laspy[lazrs] ``` or ``` pip install leafmap laspy[lazrs] ``` ライブラリのインストール(installしたpythonのversionに対応したライブラリをインストールしてくれる) conda install [ライブラリ名] インストール済みのライブラリの表示 conda list 仮想環境の削除 conda remove -n [仮想環境名] --all 指定したライブラリに対応するpythonのversion確認 conda search [ライブラリ名] leafmap --- * [leafmap](https://leafmap.org/) https://colab.research.google.com/drive/1WqRhFFv_Q1jsxkuBiuii0Ig8Z0Xf_vua#scrollTo=3fdef45a-be68-4935-b32b-4d5a26bbc12b conda activate geo conda install -c open3d-admin open3d pip install leafmap[lidar] ### リンク * [「地理空間情報データ利活用」](https://hackmd.io/@geopythonjp/HkppxtRP5/) * [Pythonのコードを1行書くだけで誰でも手軽にインタラクティブな地図アプリを作れるLeafmapを使ってみよう](https://qiita.com/nokonoko_1203/items/a287b1d48e91c23bb0c5) * [Leafmap/Open3Dを使って掛川城の大規模点群データ(5GB)をPythonで可視化してみよう!](https://qiita.com/nokonoko_1203/items/63e00d279cf7efb5521d) * [第30回GIS学会 ワークショップ - FOSS4Gを使って3D空間データを扱ってみよう!!](https://hackmd.io/@homata/SkfR2h5UY/%2FtVZTQFQRQrGlnE6L7fZ9eQ) * [Welcome to Geo-Python 2022!](https://geo-python-site.readthedocs.io/en/latest/) * [GeoPython](https://2022.geopython.net/) * [Geo+Python JP](https://geopythonjp.connpass.com/) -[Discord](https://discord.gg/K9f3ygK) * [Pythonで地理空間情報(GIS)やるために必要なパッケージ全部入りの「geospatial」が便利すぎた](https://qiita.com/nokonoko_1203/items/55faf4455f7986080e59) - [Welcome to geospatial](https://geospatial.gishub.org/)