2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

法務省登記所備付地図データをマージする

Last updated at Posted at 2023-02-01

2023年1月23日に法務省登記所備付地図データが公開されました。しかし、ダウンロードに時間がかかったり、XML形式のファイルをコンバートする手間などがあり、少し使いにくいものです。
ですが、北海道分のデータに関しては北海道庁の喜多耕一さんがGeojsonに変換したものをGitHubにアップロードして公開してくれました(登記所備付地図(Geojson)のダウンロード)。
せっかくのデータですので、使い倒していきたいと思います。

地番データは細かい領域に分かれている

ダウンロードしたGeojsonは小さな領域に分割されています(厚沢部町は36の領域に分割されていました)。このままQGISに読み込んでもきちんと表示されるのですが、このままでは少し具合が悪いので、Rを利用して一つのファイルに結合します。
02.png

データをマージする

tidyversesfパッケージを使います

library(tidyverse)
library(sf)

データを読み込みつつ結合していきます。

# read data
map <-
  # geojsonファイルをリスト化する
  list.files(path = "data/",  # データの格納されているディレクトリを指定  
           pattern = ".geojson",  # 「.geojson」が含まれるファイルを検索
           full.names = T) %>% # ファイル名をフルパスで取得
  # map関数で、リスト化されたデータにそれぞれst_readを適用 
  purrr::map(sf::st_read) %>%
  # geojsonファイルを結合
  dplyr::bind_rows() %>%
  # 座標系をJGD2000UTMzone54に変換(オリジナルはJGD2011の緯度経度系)
  sf::st_transform(3100) %>%
  # 必要なデータ項目だけを残す
  dplyr::select(市区町村名, 大字名, 丁目名, 小字名, 地番)

データの中身はこんな感じです。

>map
Simple feature collection with 33550 features and 5 fields (with 395 geometries empty)
Geometry type: MULTIPOLYGON
Dimension:     XY
Bounding box:  xmin: -1358599 ymin: 4630667 xmax: 8537937 ymax: 17948300
Projected CRS: JGD2000 / UTM zone 54N
First 10 features:
       市区町村名 大字名 丁目名 小字名 地番                       geometry
1  檜山郡厚沢部町   <NA>   <NA> 字峠下    1 MULTIPOLYGON (((449812.8 46...
2  檜山郡厚沢部町   <NA>   <NA> 字峠下    2 MULTIPOLYGON (((449809 4644...
3  檜山郡厚沢部町   <NA>   <NA> 字峠下    3 MULTIPOLYGON (((449817.8 46...
4  檜山郡厚沢部町   <NA>   <NA> 字峠下    4 MULTIPOLYGON (((449838.6 46...
5  檜山郡厚沢部町   <NA>   <NA> 字峠下    6 MULTIPOLYGON (((450081.3 46...
6  檜山郡厚沢部町   <NA>   <NA> 字峠下    7 MULTIPOLYGON (((449854.8 46...
7  檜山郡厚沢部町   <NA>   <NA> 字峠下    8 MULTIPOLYGON (((449849.2 46...
8  檜山郡厚沢部町   <NA>   <NA> 字峠下   11 MULTIPOLYGON (((449869.7 46...
9  檜山郡厚沢部町   <NA>   <NA> 字峠下 13-1 MULTIPOLYGON (((450816.7 46...
10 檜山郡厚沢部町   <NA>   <NA> 字峠下 13-2 MULTIPOLYGON (((450799 4644...

mapview()関数で表示してみます。

library(mapview)
mapview(map)

うまく結合できているようです。
03.png

データを書き出す

うまくデータを結合できたので書き出します。

# write data
  sf::st_write(
    obj = map,
    driver = "GPKG",
    append = FALSE ,
    "output/01363_JGD2000utm54.gpkg")  

QGISで読み込むとうまく表示されました。
04.png

まとめ

結合された地番データは様々な使いみちが考えられます。次回は地番データをりようした郷土研究への活用事例を紹介します。

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?