データビジュアライゼーション
ボロノイ図(Voronoi diagram)は、上記のように細胞のような形をしています。ある点(建物)から最短距離の範囲を囲うと、上のような図になります。領域には様々な意味を持たせることができると思いますが、テリトリーとも言えるでしょう。
動物病院を開業する上でテリトリー密集地で勝負するか、疎な場所で開業するかは重要な点です。動物病院の情報はスクレイピングで入手できるのですが、著作権等に違反しそうなので掲載できません。代わりに、国土交通省が公開している人の病院の位置のデータを使用します。
データ
平成26(2014)年9月時点の神奈川県医療機関のデータを使用します。
出典:国土交通省国土数値情報ダウンロードサイト「国土数値情報 医療機関データ」(国土交通省)(https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-N03-v2_4.html)を加工して作成
座標系はJGD2000(EPSG:4612)です。
使うパッケージは、sfとleafletです。leafletは、crs4326しか受け付けないので変更します。
library(sf)
k_hospital <- st_read("hospital_kanagawa_2014/P04-14_14-g_MedicalInstitution.shp",
options = "ENCODING=CP932",
crs = st_crs(4612))
k_hospital2 <- st_transform(k_hospital, crs = 4326)
voronoi <- k_hospital2 %>%
st_union() %>%
st_voronoi() %>%
st_collection_extract()
box <- st_bbox(k_hospital2) %>%
st_as_sfc()
voronoi_map <- st_crop(voronoi, box)
library(leaflet)
leaf <- leaflet() %>%
addTiles() %>%
addPolygons(data = voronoi_map) %>%
addCircles(data = k_hospital2)
htmlwidgets::saveWidget(leaf,"voronoi_kanagawa.html")
leafletの埋め込みは、ファイルが重すぎて失敗しました。画像を貼り付けておきます。
横浜
桜木町
鎌倉・藤沢・平塚
駅の周辺は病院が密集していることがわかります。