Ich versuche eine Choropleth mit d3.js zu machen, aber ich bin erst am Anfang steckengeblieben. Ich habe eine Shapefile gefunden und GeoJSON- und TopoJson-Dateien daraus erzeugt, genau wie here. Die Karte verwendet Albers-Sibirien Projektion. Was ich an dieser Projektion gefunden:Karte mit d3.js und TopoJSON, Albers Siberia Projektion
Projektion: Albers Equal-Gebiet Conic
- Einheiten: Meter
- Sphäroid: Krasovsky
- Zentralmeridian: 105
- Standard Parallel 1: 52
- Standard Parallel 2: 64
- Referenz Breitengrad: 0
- Falsch Ostwert: 18500000
- Falsch Northing: 0
PROJ.4: + proj = AEA + lat_1 = 52 + 64 + = lat_2 lat_0 = 0 + lon_0 = 105 + x_0 = 18500000 + Y_0 = 0 + ellps = krass + Einheiten = m + towgs84 = 28, -130, -95,0,0,0,0 + no_defs
MapInfo: "Albers-Sibirien", 9, 1001, 7, 105, 0, 64, 52, 18500000, 0.
Also habe ich diesen Code endlich und es macht nichts (und sogar freez up), was ist los?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Choropleth</title>
<script type="text/javascript" src="d3/d3.v3.js"></script>
<script type="text/javascript" src="d3/queue.v1.min.js"></script>
<script type="text/javascript" src="d3/topojson.v0.min.js"></script>
</head>
<body>
<h1>My Choropleth</h1>
<script type="text/javascript">
var width = 960,
height = 500;
var svg = d3.select("body").append("svg")
.attr("width", width)
.attr("height", height);
var pr = d3.geo.albers()
.center([105,0])
.parallels([52, 64])
.scale(1000);
var path = d3.geo.path().projection(pr);
d3.json("map_rus_topo.json", function(error, map) {
svg.append("path")
.datum(topojson.object(map, map.objects.map_rus))
.attr("d", path);
});
</script>
</body>
Sie können alle JSON-Dateien here finden.
Und noch eine Frage: Wie kann ich auf den Wert von Bereich Feld in meine TopoJson Datei beziehen.
Was genau passiert, wenn Sie den Code ausführen? Erhalten Sie irgendeine Art von Fehlermeldung, Ausgabe? –
Nein, keine Fehler in der Konsole. – KoGor
Die Größe der JSON-Dateien kann ein Problem sein. Haben Sie versucht, sie zu vereinfachen oder nur etwas länger zu warten? –