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
職種に名前が付く、ということ/The fact that a job title has a name
bitkey
1
230
大規模アジャイル開発のリアル!コミュニケーション×進捗管理×高品質
findy_eventslides
0
330
バクラクでのSystem Risk Records導入による変化と改善の取り組み/Changes and Improvement Initiatives Resulting from the Implementation of System Risk Records
taddy_919
0
210
ソフトウェアプロジェクトの成功率が上がらない原因-「社会価値を考える」ということ-
ytanaka5569
0
120
非エンジニアにも伝えるメールセキュリティ / Email security for non-engineers
ykanoh
13
3.8k
PHPStan をできる限り高速化してみる
colopl
0
250
PHPでアクターモデルを活用したSagaパターンの実践法 / php-saga-pattern-with-actor-model
ytake
0
1k
技術的負債を正しく理解し、正しく付き合う #phperkaigi / PHPerKaigi 2025
shogogg
7
1.7k
パスキー導入の課題と ベストプラクティス、今後の展望
ritou
7
1.2k
Restarting_SRE_Road_to_SRENext_.pdf
_awache
0
150
Javaの新しめの機能を知ったかぶれるようになる話 #kanjava
irof
3
4.9k
コンソールで学ぶ!AWS CodePipelineの機能とオプション
umekou
2
110
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
8
700
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
4 Signs Your Business is Dying
shpigford
183
22k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Building Your Own Lightsaber
phodgson
104
6.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
31
4.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Making Projects Easy
brettharned
116
6.1k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
GraphQLとの向き合い方2022年版
quramy
45
14k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
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がなんとかしてくれる! • 井口さんの発表!
おわりに • 先日の講義のレポート • 地域創生に必要なオープンデータは? • 自分は旅行が趣味なため,電車やバスの時刻表やルートなどのデータ が望ましい • 地域のスーパーマーケットやバスの走行本数など
• その他,過疎地等の公共交通に関するオープンデータが必要とのコメントも • もっと簡単に使えると良いな。