More Related Content
Similar to 130113 os mworkshop_presentation
Similar to 130113 os mworkshop_presentation (8)
More from Takayuki Nuimura
More from Takayuki Nuimura (20)
130113 os mworkshop_presentation
- 1. はじめに 解析手順 データの可視化 おわりに
R による OSM のタグ情報解析と可視化
縫村崇行 (名古屋大学)
OpenStreetMap ワークショップ#5
(名古屋工業大学 2013/01/13)
1 / 18
- 2. はじめに 解析手順 データの可視化 おわりに
自己紹介
専門:GIS や RS によるヒマラヤの氷河の変動把握
所属:名大・環境学・雪氷圏変動研究室 (理農館)
OSGeo1 財団 日本支部 運営委員
主な業務内容
氷河の空間分布 DB 作成
ヒマラヤでフィールド調査 (DGPS)
3D モニターを使ってステレオ写真測量
研究室で GIS や R 言語の指導
1
The Open Source Geospatial Foundation
2 / 18
- 3. はじめに 解析手順 データの可視化 おわりに
自己紹介 (メイン業務以外の活動)
FOSS4G ツール勉強会@名古屋を主催
(第 1 回 2011/12/11、第 2 回 2012/4/14、第 3 回 2012/12/15)
FOSS4Ga とは:QGIS、GRASS GIS、GMT や R など、
オープンソースの空間解析ソフトウェア
URL:https://sites.google.com/site/foss4gnagoya/
a
Free and Open Source Software for Geospatial
Nagoya.R (東海地方を中心とした R の勉強会)
名大の言語系の研究者の方が主催
URL:http://corpus-study.info/nagoyar/
世界各地の都市で同様のイベント
(ex. Tokyo.R、Tsukuba,R、London.R)
3 / 18
- 4. はじめに 解析手順 データの可視化 おわりに
R とは
http://cran.r-project.org/
コマンドラインベースで様々な統計解析が可能
多くの追加機能 (パッケージ) が開発されている
今回は拡張機能の osmar パッケージと ggplot2 パッケージを使用。
4 / 18
- 5. はじめに 解析手順 データの可視化 おわりに
OpenStreetMap データの構成
基本要素
OSM データは 3 種類の基本要素 (Node、Way、Relation) で構成さ
れており、それらには様々なタグ情報が付けられている
Node Way Relation
http://wiki.openstreetmap.org/wiki/JA:Data_Primitives
タグ
タグとは Key と Value の組み合わせとして付けられている情報。
5 / 18
- 6. はじめに 解析手順 データの可視化 おわりに
R の osmar パッケージについて
osmar パッケージを使うと OpenStreetMap データを
ベクター形式のまま R に読み込むことができる。
=⇒ ベクター形式なので様々な空間解析や属性情報 (≃ タグ) 解析
が可能
その他にも"OpenStreetMap"というパッケージがある
しかしこちらはラスター形式で読み込むため、属性情報は含まれ
ず空間情報解析もできない。背景図の利用としては便利かも。
=⇒ 詳しくは OSM ワークショップ#1 での発表資料を参照下さい
http://www.slideshare.net/nuimura/120630-os-mworkshoppresentation
6 / 18
- 7. はじめに 解析手順 データの可視化 おわりに
データ読み込み
名古屋大学 (136.97◦ E, 35.154◦ N) を中心に、3000 m × 3000 m の
範囲2 をダウンロードして読み込む場合
1 library(osmar)
2
3 nagoya_bb <- center_bbox(136.97, 35.154, 3000, 3000)
4 nagoya <- get_osm(nagoya_bb, source=osmsource_api())
nagoya という名前の変数としてデータが読み込まれる
2
厳密にはその範囲に一部でも重なる地物
7 / 18
- 8. はじめに 解析手順 データの可視化 おわりに
osmar オブジェクトのデータ構造
osmar オブジェクトは 3 つのスロットをもつ
nodes
attrs: id,lat,lon,user,uid,visible,version,changeset,timestamp
tags: id,k,v
ways
attrs: id,user,uid,visible,version,changeset,timestamp
tags: id,k,v
refs: id,ref
relations
attrs: id,user,uid,visible,version,changeset,timestamp
tags: id,k,v
refs: id,type,ref,role
地物と様々な情報を id で結びつけたリレーショナル DB
8 / 18
- 9. はじめに 解析手順 データの可視化 おわりに
任意のデータの抽出の例
source タグの値が bing の地物 id をまずリストアップしてから、
id にもとづいて該当地物の抽出
1 bing_id <- find(
2 nagoya, way(tags(k == "source" & v == "bing")))
3
4 bing_nagoya <- subset(
5 nagoya, ids = find_down(nagoya, way(bing_id)))
9 / 18
- 10. はじめに 解析手順 データの可視化 おわりに
任意のデータの抽出の例
source タグの値が survey の地物 id をまずリストアップしてから、
id にもとづいて該当地物の抽出
1 survey_id <- find(
2 nagoya, way(tags(k == "source" & v == "survey")))
3
4 survey_nagoya <- subset(
5 nagoya, ids = find_down(nagoya, way(survey_id)))
10 / 18