データビジュアライゼーション

ボロノイ図(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の埋め込みは、ファイルが重すぎて失敗しました。画像を貼り付けておきます。

横浜

桜木町

鎌倉・藤沢・平塚

駅の周辺は病院が密集していることがわかります。

category