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
400
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
鳥取に赴任したGIS人が 知識ゼロからGTFS(にトライしたら ハマった話)
2024年6月21日,GTFSxOSGeo研究会の発表資料
wata909
June 20, 2024
More Decks by wata909
See All by wata909
How Many Night until FOSS4G Hiroshima 2026!!
wata909
0
88
FOSS4Gもくもく会 #008 成果報告 by wata909
wata909
0
100
ようこそ、オープンなGeoの世界へ! 〜FOSS4GとOSGeoのご紹介〜
wata909
0
200
FOSS4Gの現在地とこれから
wata909
0
100
FOSS4G のこれまでと、これから
wata909
0
120
Pythonでジオを使い倒そう! 〜それとFOSS4G Hiroshima 2026のご紹介を少し〜
wata909
0
1.5k
2026年にGlobal FOSS4Gが広島にきます! 〜OSGeo.JPとFOSS4Gのご紹介〜
wata909
0
490
地図も、未来も、オープンに。 〜OSGeo.JPとFOSS4Gのご紹介〜
wata909
0
340
オープンソースソフトウェアで地図を作ってみたいけど、どうしたらいいの!? 〜OSSの地理情報ソフトFOSS4Gのご紹介〜
wata909
0
410
Other Decks in Technology
See All in Technology
AIエージェントの知識表現と推論に なぜグラフが使われるのか - 記号的AIの復権とニューラルAIとの統合
yohei1126
1
270
13年運用タイトルのサーバーサイドが辿り着いた現在地 ― モンスターストライクにおける技術・組織・AI活用から得た知見
mixi_engineers
PRO
1
450
SmartHR Engineering Team Deck
smarthr
0
180
20260801_スクフェス大阪
kgnkhkr
1
1.1k
AI ネイティブな組織に Gemini Enterprise Agent Platform がなぜ必要なのか
asei
1
160
最高のシステムプロンプトを作るためにフィードバック機能を導入した話
alchemy1115
1
320
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
1
110
AIは実装を速くする。では、私たちは何を今作るべきか?-立場を越えてリリースに向き合ったチーム開発の実践 / 20260801 Hiromi Nakaya and Naoki Takahashi
shift_evolve
PRO
3
360
TypeScript入門 2026
recruitengineers
PRO
1
100
つくって納得、つかって実感! 大規模言語モデルことはじめ ver2.0
recruitengineers
PRO
2
220
PLaMoを毎日の開発で使い育てていく
pfn
PRO
0
180
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
1
120
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Producing Creativity
orderedlist
PRO
348
40k
The untapped power of vector embeddings
frankvandijk
2
1.8k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
630
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Side Projects
sachag
455
43k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Ethics towards AI in product and experience design
skipperchong
2
340
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がなんとかしてくれる! • 井口さんの発表!
おわりに • 先日の講義のレポート • 地域創生に必要なオープンデータは? • 自分は旅行が趣味なため,電車やバスの時刻表やルートなどのデータ が望ましい • 地域のスーパーマーケットやバスの走行本数など
• その他,過疎地等の公共交通に関するオープンデータが必要とのコメントも • もっと簡単に使えると良いな。