O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Leaflet for Rで好きなLeaflet JSプラグインを使おう

2017/08/26の東京R発表資料

  • Entre para ver os comentários

Leaflet for Rで好きなLeaflet JSプラグインを使おう

  1. 1. Leaflet for Rで好きな Leaflet JSプラグインを使おう 2017/08/26 @Hiromoooo
  2. 2. 自己紹介 • 氏名:中村 拡(なかむら ひろむ) • 所属:GISの会社 • 仕事:企画的な • 趣味:生物、写真 2
  3. 3. 資料 • SlideShareで資料公開してます • ソースコードが知りたい方はGithubの使い方をやさしく教えて 3
  4. 4. 今日のメッセージ Leaflet Rで好きなLeaflet JSのプラグインを使おう 4
  5. 5. 今回やってみたこと • RのLeaflet for Rパッケージではそのまま使えないEsriのLeafletプラグインを使えるように工 夫してShiny Dashboardを作成 画像:https://www.rstudio.com/about/trademark/ RStudio® Shiny® 5
  6. 6. Leaflet for R • 簡単にRで地図作成が可能 library(leaflet) leaflet() %>% addTiles() %>% # Add default OpenStreetMap map tiles addMarkers(lng=174.768, lat=-36.852, popup="The birthplace of R" Leaflet for R:https://rstudio.github.io/leaflet/ 6
  7. 7. Esri? • Esri = 位置情報付きのデータを可視化、分析するGISソフトのベンダー https://www.esri.com/en-us/home 7
  8. 8. Maps we love, Cool maps • http://www.esri.com/products/maps-we-love • https://coolmaps.esri.com/#0 8
  9. 9. Esri Leaflet • A lightweight set of tools for using ArcGIS services with Leaflet (JS). 9
  10. 10. Leaflet Plugins with Leaflet R? 10
  11. 11. Leaflet Plugins 11 http://leafletjs.com/plugins.html#plugin-collections
  12. 12. Leaflet JSのプラグインはRのLeafletパッケージでは一部しか使えませんね 12
  13. 13. 開発者なら知っている Joe Cheng:https://github.com/jcheng5 13
  14. 14. ちょっと工夫すると任意のプラグインが使えるらしい esriPlugin <- htmltools::htmlDependency("leaflet.esri", "1.0.3", src = c(href = "https://cdn.jsdelivr.net/leaflet.esri/1.0.3/"), script = "esri-leaflet.js" ) registerPlugin <- function(map, plugin) { map$dependencies <- c(map$dependencies, list(plugin)) map } leaflet::leaflet() %>% setView(-122.23, 37.75, zoom = 10) %>% registerPlugin(esriPlugin) %>% htmlwidgets::onRender("function(el, x) { L.esri.basemapLayer('Topographic').addTo(this); }") Using arbitrary Leaflet JS plugins with Leaflet for R:https://gist.github.com/jcheng5/c084a59717f18e947a17955007dc5f92 14
  15. 15. Shinyに地図を組み込む 15
  16. 16. Shiny? Shiny Dashboard? Shinyってどうやってつくるの? Shinyで地図を組み込むには? 16
  17. 17. まずはほくそ笑んでください • RStudio Shiny チュートリアル レッスン1 ようこそ Shiny へ • http://qiita.com/hoxo_m/items/c8365117f3444fb51df4 • Shiny DashboardはほとんどShinyと一緒です • が、和訳されたチュートリアルはないかも… • 英文はこちら • https://rstudio.github.io/shinydashboard/get_started.html 17
  18. 18. やってみた 18
  19. 19. 使ったデータ • Lionfish Observations 1985 2015 • Gulf of Mexico Coastal Ocean Observing System • https://opendata.arcgis.com/datasets/4445b552861f4f9c932af7ea4 7891267_0 • ハナミノカサゴ(Pterois volitans)等の観測データ • もともとはインド洋、太平洋に生息 • カリブ海あたりで爆発的に増殖している侵略的外来種 19
  20. 20. こんな感じ 20 https://h-nakamura.shinyapps.io/shinytest/
  21. 21. 制約条件多々 • Rの{leaflet}パッケージが古いバージョンのLeafletにもとづいているので、Leafletプラグイン もそれに準拠したバージョンにする • Shinyに組み込む際はCDNが使えないようなので、ローカルにJSファイルを落としてそこから読 み込む 21
  22. 22. おまけ 22
  23. 23. 考えることはみんな一緒 • めんどくさいことしなくてもよかった → {leaflet.esri} 23 https://github.com/bhaskarvk/leaflet.esri “Always remember that people lot smarter than you put hours into developing the language/API/library you are using.”
  24. 24. {arcgisbinding} 24 https://r-arcgis.github.io
  25. 25. Enjoy! 25

×