[R-es] help: Shiny y denisty plots en R maps

Javier Villacampa González javier.villacampa.gonzalez en gmail.com
Mar Nov 25 12:26:31 CET 2014


Hola buenas,

estoy en una época convulsa de de dudas, ya que ando pegandome con shiny y
los mapas. Quería pegar un heatmap dinámico (mapa de paises) en una
aplicación shiny.
El problema es que no termino de hayar la manera. Os paso las apps. A ver
si alguien sabe algo. La idea es poder mostrar el heatmap por distintos
subgrupos seleccionados en la app. Pero estoy bastante perdido.

Muchas gracias por adelantado como siempre.

#-----------------------------------------------------------------------------------------
# heatmap.R
#-----------------------------------------------------------------------------------------

# require(devtools)
# install_github('ramnathv/rCharts')
# install_github('ramnathv/rMaps')
library(rCharts)
library(rMaps)
L2 <- Leaflet$new()
L2$setView(c(29.7632836,  -95.3632715), 10)
L2$tileLayer(provider = "MapQuestOpen.OSM")

data(crime, package = 'ggmap')
library(plyr)
crime_dat = ddply(crime, .(lat, lon), summarise, count = length(address))
crime_dat = toJSONArray2(na.omit(crime_dat), json = F, names = F)
cat(rjson::toJSON(crime_dat[1:2]))
# Add leaflet-heat plugin. Thanks to Vladimir Agafonkin
L2$addAssets(jshead = c(
  "http://leaflet.github.io/Leaflet.heat/dist/leaflet-heat.js"
))

# Add javascript to modify underlying chart
L2$setTemplate(afterScript = sprintf("
<script>
  var addressPoints = %s
  var heat = L.heatLayer(addressPoints).addTo(map)
</script>
", rjson::toJSON(crime_dat)
))

L2


#-----------------------------------------------------------------------------------------
# ui.R
#-----------------------------------------------------------------------------------------

library(rCharts)
library(rMaps)
library(leaflet)


shinyUI(fluidPage(
  tags$head(tags$link(rel='stylesheet', type='text/css',
href='styles.css')),
  leafletMap(
    "map", "100%", 400,
    initialTileLayer = "//{s}.
tiles.mapbox.com/v3/jcheng.map-5ebohr46/{z}/{x}/{y}.png",
    initialTileLayerAttribution = HTML('Maps by <a href="
http://www.mapbox.com/">Mapbox</a>'),
    options=list(
      center = c(29.7632836,  -95.3632715),
      zoom = 10
    )
  ),

  hr(),
  fluidRow(

  )
))


#-----------------------------------------------------------------------------------------
# server.R
#-----------------------------------------------------------------------------------------
library(leaflet)
library(ggplot2)
library(maps)
library(rCharts)
library(rMaps)

data(uspop2000)



shinyServer(function(input, output, session) {

  map <- createLeafletMap(session = session, outputId = 'map')

})
--

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es