Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
鳥取に赴任したGIS人が知識ゼロからGTFS(にトライしたらハマった話)
Search
wata909
June 20, 2024
Technology
0
220
鳥取に赴任したGIS人が 知識ゼロからGTFS(にトライしたら ハマった話)
2024年6月21日,GTFSxOSGeo研究会の発表資料
wata909
June 20, 2024
Tweet
Share
More Decks by wata909
See All by wata909
オープンソースソフトウェアで地図を作ってみたいけど、どうしたらいいの!? 〜OSSの地理情報ソフトFOSS4Gのご紹介〜
wata909
0
97
QGISハンズオン事に質問のあったProjectのGeoPackageへの保存方法についての、補足の資料です。
wata909
0
140
FOSS4G 山陰 Meetup 2024@砂丘 はじめの挨拶
wata909
1
170
「歴史的農業環境閲覧システム」と「迅速測図」について
wata909
1
1.2k
地図アーカイブを オープンデータ化することの意義 -迅速測図データ公開から得たもの-
wata909
0
350
ベースレジストリ研究会・岩崎発表資料
wata909
0
140
君も法務省地図XMLで遊んでみないか? - AMX-projectのご紹介
wata909
0
580
日本サンゴ礁学会QGIS初心者向けハンズオ
wata909
0
400
クラウド最適化ファイルを用いた筆ポリゴン公開サイトの構築
wata909
0
390
Other Decks in Technology
See All in Technology
Go の analysis パッケージで自作するリファクタリングツール
kworkdev
PRO
1
420
「家族アルバム みてね」を支えるS3ライフサイクル戦略
fanglang
0
170
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
430
Go製のマイグレーションツールの git-schemalex の紹介と運用方法
shinnosuke_kishida
1
410
Multitenant 23ai の全貌 - 機能・設計・実装・運用からマイクロサービスまで
oracle4engineer
PRO
2
120
Compose MultiplatformにおけるiOSネイティブ実装のベストプラクティス
enomotok
1
210
SSH公開鍵認証による接続 / Connecting with SSH Public Key Authentication
kaityo256
PRO
2
220
SaaSプロダクト開発におけるバグの早期検出のためのAcceptance testの取り組み
kworkdev
PRO
0
440
大規模プロジェクトにおける 品質管理の要点と実践 / 20250327 Suguru Ishii
shift_evolve
0
280
パスキー導入の課題と ベストプラクティス、今後の展望
ritou
7
1.2k
AWS のポリシー言語 Cedar を活用した高速かつスケーラブルな認可技術の探求 #phperkaigi / PHPerKaigi 2025
ytaka23
7
1.5k
Riverpod & Riverpod Generatorを利用して状態管理部分の処理を書き換えてみる簡単な事例紹介
fumiyasac0921
0
110
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
How to Think Like a Performance Engineer
csswizardry
22
1.5k
We Have a Design System, Now What?
morganepeng
51
7.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
102
18k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
Being A Developer After 40
akosma
90
590k
Code Reviewing Like a Champion
maltzj
522
39k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Building Applications with DynamoDB
mza
94
6.3k
The Cult of Friendly URLs
andyhume
78
6.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
51
2.4k
Transcript
GTFSxOSGeo研究会 2024/06/21 鳥取に赴任したGIS人が 知識ゼロからGTFS 鳥取大学/OSGeo.JP 岩崎亘典
GTFSxOSGeo研究会 2024/06/21 鳥取に赴任したGIS人が 知識ゼロからGTFSにトライしたら ハマった話 鳥取大学/OSGeo.JP 岩崎亘典
岩崎亘典 a.k.a @wata909 • OSGeo.JP、Open Science、二女の父 • 3月までつくば,4月から鳥取
ことの発端 • 11月に鳥取大学乾燥地研究センターがある(松葉ガニの解禁は11/6) • 空港からバスがあるのか? https://sites.google.com/japangeomorphology.org/jgu2024/home
こんな図を作りたい • 鳥取空港から乾燥地研究センターに行くにはどうしたら良い? • 鳥取空港から鳥取砂丘に行くバスがあれば良いのでは? https://qiita.com/niyalist/items/50acea5837c52aa51b31
なおGoogle Mapsさま
鳥取といえば • このひとのお膝元 • きっとGTFSを使えばちゃっとわかる!
ちょうど更新さればかり!
こんな資料もある! • GTFSからバスの運行頻度図を作成する #GIS - Qiita
あまかった・・・。
手順をおさらい • データをダウンロード • 鳥取県バス情報 - 鳥取県オープンデータ (tori-info.co.jp) • GTFSを格納する場所を整えます
• PostgreSQL+PostGIS • GTFSを格納するツールをインストールします • gtfsdb • 会社ごとにバラバラのGTFSを結合します • onebusaway-gtfs-merge-cli • gtfsdb を使ってPostgreSQLにデータを読み込みます • QGISをつかって,gtfsのデータを見やすく表示します
できるとおもうじゃん・・・ なお,動作環境は MacOS Sonoma 14.5 メモリ 18GB HDDの空き 500GBぐらい
データをダウンロード • 流石にこれはできる • DLして解凍
PostgreSQLのインストール • お手本が13なので,13でやる GTFSからバスの運⾏頻度図を作成する #GIS - Qiita
以下でインストール • brew install postgresql@13 • ちょっと時間がかかりますが,できます。
バージョンの確認 • psql –version • 13をインストールしたつもりが,すでに14が入ってた • わたしってほんとばか。
PostGISのインストール • 14をアンインストールして,13のみにする • PostGISをインストールする • brew install postgis •
DBにPostGISのextensionを入れる • create extension postgis; • コケますorz… • PostGISは,14にしか対応してない 13をアンインストール,14をインストール • Macの場合は,PostGISが14にしか対応していない模様
gtfsdbの構築 • 仮想環境を作って構築 • conda create --name gtfsdb python=3.9 •
conda activate gtfsdb • pip3 install zc.buildout • buildout –version • git clone https://github.com/OpenTransit Tools/gtfsdb.git • cd gtfsdb • buildout install prod postgresql
gtfsのマージ • 鬼門でした・・・ • onebusaway-gtfs-merge-cli • ない。
gtfsのマージ • ソースからコンパイル • エラー
gtfsのマージ • 別のツールを使用 • https://github.com/oozora283/gtfs-merge • 読み込んだら空!! • 圧縮の失敗 •
正しく圧縮! • しかし,一部しか結合されていない・・・
あきらめて個別に読み込み • ~/opt/gtfsdb/gtfsdb/bin/gtfsdb-load --database_url postgresql://wata909@localhost:5432/gtfs-tottori --is_geospatial tottori- gtfs/1.zip
対象日を抽出 • ない・・・
隣接停留所ペアのテーブルを作成
ちょっと注意 • prev_parent_stop_idではなく, prev_stop_id
バス停間の運行頻度を集計
隣接停留所ペアに地理形状を付与する
できた! • ワンチャンありそうな気が!?
おまけ • 鳥取空港発を再帰的に 検索したが,コケたw • 範囲は絞っているけど, 難しかった
感想 • 難しかった所 • PostgreSQLに読み込むところまで • 読み込んでからは,簡単 • SQLは枯れた技術で,GTFSは新しい技術だからか? •
ドキュメントが少ない? • ハマる所,問題になる所の情報がもっと分かると良い • この辺は,FOSS4Gのほうでも貢献できる? • きっとGTFS-GOがなんとかしてくれる! • 井口さんの発表!
おわりに • 先日の講義のレポート • 地域創生に必要なオープンデータは? • 自分は旅行が趣味なため,電車やバスの時刻表やルートなどのデータ が望ましい • 地域のスーパーマーケットやバスの走行本数など
• その他,過疎地等の公共交通に関するオープンデータが必要とのコメントも • もっと簡単に使えると良いな。