rMaps choropleth con json personalizado

17

Con RI quiero hacer un mapa animado de coropletas con el rMapspaquete y un mapa personalizado. Intenté seguir el ejemplo de Diego Valle descrito aquí y usar la información del mapa personalizado para Datamaps .

Sin embargo, el mapa no se muestra . Pero, la leyenda con la tecla de relleno adecuada aparece con la barra de animación del año. El archivo topoJson parece estar bien.

library(rCharts);library(rMaps);library(rgdal)
map = readOGR("https://raw.githubusercontent.com/gupierre/GHA_vol/master/Data/GHA_adm/GHA_adm1.topo.json", layer="admin_1",stringsAsFactors=F)
#Data:

SDLOG<-read.table("https://raw.githubusercontent.com/gupierre/GHA_vol/master/Data/sdlog.csv", header=T,stringsAsFactors=F, sep =",")
head(SDLOG)
 year          name      sdlog  type
>1 2004 Greater Accra 0.20030687 urban
>2 2005 Greater Accra 0.15322712 urban
>3 2006 Greater Accra 0.10782677 urban


#Map:

library(rCharts);library(rMaps)
d1 <- ichoropleth(sdlog ~ name, data = SDLOG[SDLOG$type=="rural",], ncuts = 7, pal = 'YlOrRd', animate = 'year',  map = 'admin_1')
d1$set(
  geographyConfig = list(
    dataUrl = "https://raw.githubusercontent.com/gupierre/GHA_vol/master/Data/GHA_adm/GHA_adm1.topo.json"
  ),
 scope = 'admin_1',
  setProjection = '#! function( element, options ) {
  var projection, path;
  projection = d3.geo.mercator()
  .center([8, -1]).scale(element.offsetWidth)
  .translate([element.offsetWidth / 2, element.offsetHeight / 2]);

  path = d3.geo.path().projection( projection );
  return {path: path, projection: projection};
  } !#'
)
d1

Nota: esta pregunta se hizo en stackoverflow sin éxito. No conozco la política sobre SIG para publicar preguntas de SO. Indique en los comentarios si me equivoco al simplemente copiar y pegar mi pregunta inicial.

GPierre
fuente
¡Bienvenido a nuestro sitio! El método preferido es marcar su pregunta original para la migración : eso creará enlaces automáticos entre las dos versiones pero informará a las personas que las respuestas deben publicarse aquí si es posible.
whuber
¿Alguna vez encontraste una solución para esto?
RJJoling
Estoy trabajando en ello, pero la URL de ustedes está realmente rota. ¿Podría repararlos o compartir sus archivos con nosotros?
César Arquero

Respuestas:

1

Es difícil saber qué está tratando exactamente de hacer porque la URL que está utilizando como ejemplo en realidad no muestra nada. Lo mismo con sus datos url. ingrese la descripción de la imagen aquí

De todos modos, aquí tienes un código simple (modificando un poco los pocos registros que estás mostrando usando head ()) para deshacerte de esta pregunta sin respuesta.

library(rMaps)
library(plyr)

#new path to csv
SDLOG <- read.table("csv.csv", header=T, stringsAsFactors=F, sep =",")
SDLOG <- mutate(SDLOG, state = c("UT", "NE", "AL")) #add place for plotting
head(SDLOG)
  year          name     sdlog  type state
1 2004 Greater Accra 0.2003069 urban    UT
2 2005 Greater Accra 0.1532271 urban    NE
3 2006 Greater Accra 0.1078268 urban    AL
4 2004 Greater Accra 0.1555555 urban    UT
5 2007 Greater Accra 0.3000000 urban    NE
6 2005 Greater Accra 0.2500000 urban    AL

#Map:
d1 <- ichoropleth(sdlog ~ state,
                  data = SDLOG[SDLOG$type=="urban",],
                  ncuts = 7,
                  pal = 'YlOrRd',
                  animate = 'year')

d1

ingrese la descripción de la imagen aquí

César Arquero
fuente