1
1

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.

【Rstats事始め】JPGIS2.1をマップ表示する

Posted at

はじめに

今まではGISはQGISを使っていました。ただ単純に地図を表示することや、分析であれば十分に使えるものでしたが、表現の広がりやデータの前処理、分析、出力を手順化するためにRを使いこなせるようにすることが目的です。
今回は国土数値情報からJPGIS2.1をダウンロードし、地図に表示するところを整理します。

コード全体像

JPGIS2map.R
library(sf)

# ShiftJISのため、ENCODING=CP932をつける
kanagawa <- sf::read_sf("<file path>/kanagawa_N03-20220101_14_GML/N03-22_14_220101.shp",
                        options= c("ENCODING=CP932"),
                        quiet = FALSE)

# データフレームを出力
kanagawa

# 地図の表示
kanagawa %>%
  dplyr::filter(N03_003 == "横浜市") %>%
  ggplot2::ggplot() +
  ggplot2::geom_sf()

完成版

yokohama.png

STEP1 必要なパッケージ

事前にRに以下のパッケージをインストールする。
sfパッケージは空間データを読み込みや書き込み、座標参照系の変換および変換を行うためのパッケージです。

Simple Features for R

install.packages("sf")

CHEATSHEET
sf.jpg
sf2.jpg

STEP2 JPGIS2.1のダウンロード

ファイルのダウンロード元
国土数値情報ダウンロードサービス

国土数値情報ダウンロードサービス-2.png
国土数値情報ダウンロードサービス-3.png

「行政区域」のリンク先から任意の都道府県と年度を選択し、データをダウンロードする。

各コードの内容

まず、sfパッケージをロードする。

library(sf)

次に、ファイルやデータベースのベクトルデータセットを sf オブジェクトとして読み込む。
ファイルはshpファイルのみ読み込むが、ファイル単体ではなく、フォルダごと読み込む点に注意する。

kanagawa <- sf::read_sf("<file path>/kanagawa_N03-20220101_14_GML/N03-22_14_220101.shp",
                        options= c("ENCODING=CP932"),
                        quiet = FALSE)

読み込んだデータフレーム
kanagwaで出力する。

【出力内容】

Simple feature collection with 1286 features and 5 fields
Geometry type: MULTIPOLYGON
Dimension:     XY
Bounding box:  xmin: 138.9158 ymin: 35.12849 xmax: 139.8358 ymax: 35.6729
Geodetic CRS:  JGD2011
# A tibble: 1,286 × 6
   N03_001  N03_002 N03_003 N03_004  N03_007                                           geometry
   <chr>    <chr>   <chr>   <chr>    <chr>                                   <MULTIPOLYGON [°]>
 1 神奈川県 NA      NA      NA       NA      (((139.6316 35.1285, 139.6316 35.12849, 139.6316 
 2 神奈川県 NA      横浜市  鶴見区   14101   (((139.676 35.45629, 139.6759 35.45598, 139.6758 
 3 神奈川県 NA      横浜市  鶴見区   14101   (((139.677 35.45814, 139.6768 35.45763, 139.6767 
 4 神奈川県 NA      横浜市  鶴見区   14101   (((139.6947 35.46528, 139.6948 35.46432, 139.6949
 5 神奈川県 NA      横浜市  鶴見区   14101   (((139.7071 35.47232, 139.7071 35.47226, 139.7071
 6 神奈川県 NA      横浜市  鶴見区   14101   (((139.7111 35.4856, 139.7111 35.48551, 139.711 3
 7 神奈川県 NA      横浜市  鶴見区   14101   (((139.7146 35.48601, 139.7148 35.48568, 139.715 
 8 神奈川県 NA      横浜市  鶴見区   14101   (((139.6775 35.53974, 139.6776 35.5397, 139.6779 
 9 神奈川県 NA      横浜市  神奈川区 14102   (((139.6583 35.46009, 139.6582 35.46009, 139.6582
10 神奈川県 NA      横浜市  神奈川区 14102   (((139.656 35.46359, 139.656 35.46356, 139.6559 3
# … with 1,276 more rows

最後に地図を表示する。

# 地図の表示
kanagawa %>%
  dplyr::filter(N03_003 == "横浜市") %>%
  ggplot2::ggplot() +
  ggplot2::geom_sf()

dplyr::filterの部分でフィルターをかけることができます。
ここをN03_001 == "神奈川県"に変更すると以下のマップができます。
kanagawa.png

1
1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?