日本の排他的経済水域の地図データ
仕事で日本の排他的経済水域の地図データを探していたのだが、日本の国土地理院の数値データ
(国土数値情報ダウンロードサービス)などは見当たらなかった。
日本の排他的経済水域は、海上保安庁のウェブサイトではこういう形になっている。
しかし、実際はいくつかの係争中水域や共同開発区域が存在する。
Rには、MazamaSpatialUtilというパッケージがあり、EEZの地図データが含まれている。
それによると、日本のEEZと係争中のエリアを区分けすると次のようになる。
# library pacman::p_load( tidyverse, sf, rnaturalearth, patchwork ) # Use function `%!in%` <- Negate(`%in%`) # Japan land japan_sf <- ne_countries(country = c('japan','russia','south korea','north korea','china','taiwan','united states of america'),scale="large", returnclass = "sf") %>% st_transform(crs=4326) # EEZ from MazamaSpatialUtils eez_sf=MazamaSpatialUtils::SimpleCountriesEEZ %>% st_as_sf() %>% st_transform(crs=4326) %>% filter(countryName %in% c("Japan","South Korea","China","Taiwan","Russia")) %>% filter(polygonID %!in% c(22,100,189,33)) # remove mainland China # test plot of EEZ ggplot(data=eez_sf) + geom_sf(fill="lightblue") + geom_sf(data=japan_sf) + #geom_sf_label(aes(label=polygonID)) + theme_bw() + lims(x=c(120,160),y=c(15,48))
見比べてみると、韓国との暫定水域について、日本の概念図では竹島を日本側に含むラインがあるが、このデータでは存在しない事がわかる。
すなわち、「暫定水域」を定義するラインが存在しない。
EEZのデータは、他にMarine Regionsというウェブサイトで取得することができる。
このウェブサイトでは、EEZのデータについてバージョンが3つ存在する。
Version 1は2012年, Version 2は2014年, Version 3は2020年にリリースされている。
このうち、Version 2と3をダウンロードし、MazamaSpatialUtilのデータと比較してみた。
すると、MazamaSpatialUtilのデータと、Version 3のデータは一致しているが、Version 2とは異なることが示された。
以下が描画に使用したコードである。
eez_sf_v2 = st_read("EEZ_land_union_v2_201410/EEZ_land_v2_201410.shp") %>% filter(str_detect(Country,"Japan")|str_detect(Country,"South Korea")|str_detect(Country,"Russia")|str_detect(Country,"China")) %>% st_transform(4326) # Marine Regions ver 3 eez_sf_v3 = st_read("EEZ_land_union_v3_202003/EEZ_Land_v3_202030.shp") %>% filter(SOVEREIGN1 %in% c("Japan","South Korea","Russia","China")|SOVEREIGN2 %in% c("Japan","South Korea","Russia","China")|SOVEREIGN3 %in% c("Japan","South Korea","Russia","China")) %>% st_transform(4326) # plot of EEZ: version 2 + version 3 comparison around Takeshima plot_v2_v3_nationwide = ggplot() + geom_sf(data=eez_sf_v2,fill="transparent",col="blue") + geom_sf(data=eez_sf_v3,fill="transparent",col="red") + geom_sf(data=eez_sf,fill="transparent",col="green",linetype=2) + geom_sf(data=japan_sf) + annotate(geom = "text",label="Marine Regions version 2", x=142,y=20,col="blue",hjust=0) + annotate(geom = "text",label="Marine Regions version 3", x=142,y=19,col="red",hjust=0) + annotate(geom = "text",label="MazamaSpatialUtils", x=142,y=18,col="green",hjust=0) + labs(title="Marine Regions EEZ data: version 2 & 3") + lims(x=c(120,158),y=c(15,48)) + theme_minimal() plot_v2_v3_nationwide
日本海を拡大すると、次のようになる。
# plot of EEZ: version 2 + version 3 comparison around Takeshima island plot_v2_v3 = ggplot() + geom_sf(data=eez_sf_v2,fill="transparent",col="blue") + geom_sf(data=eez_sf_v3,fill="transparent",col="red") + geom_sf(data=eez_sf,fill="transparent",col="green",linetype=2) + geom_sf(data=japan_sf) + annotate(geom = "text",label="Marine Regions version 2", x=137,y=33,col="blue",hjust=0) + annotate(geom = "text",label="Marine Regions version 3", x=137,y=32.5,col="red",hjust=0) + annotate(geom = "text",label="MazamaSpatialUtils", x=137,y=32,col="green",hjust=0) + labs(title="Marine Regions EEZ data: version 2 & 3") + lims(x=c(125,145),y=c(32,42)) + theme_minimal() plot_v2_v3
Version 2では、韓国との暫定水域とみられるものがデータとして記録されている。
そのため、冒頭の「日本の領海等概念図」に近い地図データを得るためにはMarine RegionsのVersion 2を利用すると可能となる。
# 日本が入るポリゴンの抽出 eez_sf1= st_read("data/raw/EEZ_land_union_v2_201410/EEZ_land_v2_201410.shp") %>% filter(str_detect(Country,"Japan")) %>% st_transform(4326) # ポリゴンを結合 eez_sf2 = eez_sf1%>% st_union() # test plot of EEZ (polygon separated) ggplot() + geom_sf(data=eez_sf1,fill="lightblue") + geom_sf(data=japan_sf) + geom_sf_label(data=eez_sf1,aes(label=OBJECTID)) + lims(x=c(120,157),y=c(18,48)) + theme_minimal() # test plot of EEZ (combined) ggplot() + geom_sf(data=eez_sf2,fill="lightblue") + geom_sf(data=japan_sf) + lims(x=c(120,157),y=c(18,48)) + theme_minimal()
なぜVersion 2からVersion 3への変更について、境界線がこのようになっているかはわからない。