choroplèthes rMaps avec json personnalisé

17

Avec RI, je veux créer une carte choroplèthle animée avec le rMapspackage et une carte personnalisée. J'ai essayé de suivre l'exemple de Diego Valle décrit ici et d'utiliser les informations de carte personnalisées pour Datamaps .

Cependant, la carte ne s'affiche pas . Mais, la légende avec la touche de remplissage appropriée apparaît avec la barre d'animation de l'année. Le fichier topoJson semble 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

Remarque: cette question a été posée sur stackoverflow sans succès. Je ne connais pas la politique sur le SIG pour publier des questions de SO. Veuillez indiquer dans les commentaires si je me trompe en copiant simplement coller ma question initiale.

GPierre
la source
Bienvenue sur notre site! La méthode préférée consiste à signaler votre question d'origine pour la migration : cela créera des liens automatiques entre les deux versions mais informera les gens que les réponses doivent être publiées ici si possible.
whuber
Avez-vous déjà trouvé une solution à cela?
RJJoling du
J'y travaille mais votre URL est en fait cassée. Pourriez-vous les réparer ou partager vos fichiers avec nous?
César Arquero

Réponses:

1

Il est difficile de dire exactement ce que vous essayez de faire, car l'URL que vous utilisez comme exemple n'affiche en fait rien. La même chose avec vos URL de données. entrez la description de l'image ici

Quoi qu'il en soit, vous avez ici un code simplifié (modifiant un peu les quelques registres que vous affichez en utilisant head ()) afin de vous débarrasser de cette question sans réponse.

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

entrez la description de l'image ici

César Arquero
la source