我正在尝试为一个项目创建一张美国地图。为此,我使用d3.geoAlbersUsa()as 投影和d3.geoPath(projection)as 路径函数。但是,当将“路径”附加到我的 svg 时,似乎没有设置“d”属性。
// Projection from geoAlbersUsa
let projection = d3.geoAlbersUsa()
.translate(width/2,height/2)
.scale(10000);
// Path from geoPath with the previous projection
let path = d3.geoPath().projection(projection);
let svg = d3.select("#svg");
// Load in csv and json data
d3.csv("state_results.csv", data => {
d3.json("states.json", json => {
// Process data from csv file and json file
...
...
...
// Selecting 'g' element in svg and appending 'path'
d3.select("#map").selectAll("path")
.data(json.features)
.enter()
.append("path")
.attr("d", path)
.style("fill", d => {
return d.properties.party;
});
当我启动我的服务器时,这是我检查 svg 元素时显示的内容:
关于为什么"d"没有在每个路径中正确设置属性的任何想法?
下面是数组中的一个元素json.features: {"type":"Feature","id":"49","properties":{"name":"Utah","density":34.30},"geometry":{"type":"Polygon","coordinates":[[[-112.164359,41.995232],[-111.047063,42.000709],[-111.047063,40.998429],[-109.04798,40.998429],[-109.053457,39.125316],[-109.058934,38.27639],[-109.042503,38.166851],[-109.042503,37.000263],[-110.499369,37.00574],[-114.048427,37.000263],[-114.04295,41.995232],[-112.164359,41.995232]]]}},
javascript网页格式svgd3.js小路
冉冉说
相关分类