Mit RI möchte ich eine animierte Choropleth-Karte mit dem rMaps
Paket und einer benutzerdefinierten Karte erstellen. Ich habe versucht, dem hier beschriebenen Beispiel von Diego Valle zu folgen und die benutzerdefinierten Karteninformationen für Datamaps zu verwenden .
Die Karte wird jedoch nicht angezeigt . Die Legende mit dem richtigen Füllschlüssel wird jedoch in der Jahresanimationsleiste angezeigt. Die topoJson-Datei scheint in Ordnung zu sein.
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
Hinweis: Diese Frage wurde beim Stackoverflow ohne Erfolg gestellt. Ich kenne die Richtlinie zu GIS für das Posten von Fragen von SO nicht. Bitte geben Sie in den Kommentaren an, ob ich beim Einfügen meiner ersten Frage falsch liege.
r
topojson
choropleth
GPierre
quelle
quelle
Antworten:
Es ist schwer zu sagen, was genau Sie versuchen, weil die URL, die Sie als Beispiel verwenden, tatsächlich nichts anzeigt. Das gleiche gilt für Ihre Daten-URLs.
Wie auch immer, hier haben Sie einen vereinfachten Code (indem Sie ein wenig die wenigen Register ändern, die Sie mit head () anzeigen), um diese unbeantwortete Frage loszuwerden.
quelle