我一直在寻找一个好的数据来预测D3中的美国州和城市边界(类似于县/州边界以及所有着名的例子。)我正在寻找能够映射我所拥有的数据的数据。城市一级。
到目前为止,我提出的最好的数据来自美国人口普查局数据:http://www.census.gov/cgi-bin/geo/shapefiles2013/main(从下拉菜单中选择地点。)
我下载了每个州的所有单个文件,并使用ogr2ogr将其转换为GeoJSON,然后使用topojson库将其转换为TopoJSON。以下是我使用的命令:
ogr2ogr -f GeoJSON -s_srs EPSG:4269 cities.geojson tl_2011_37_place.shp
topojson -s 7e-9 --id-property=+GEOID -o cities.json -- cities.geojson
然后我使用D3来绘制地图,但我没有得到寄宿生......相反,它看起来像一般的形状是正确的,但边界线似乎已被切割/褪色到处。有人能帮助我指出我做错了什么吗?
谢谢!
南卡罗来纳州:
以下是我用于映射数据的代码:
queue()
.defer(d3.json, "/shapefile/cities/cities.json")
.defer(d3.tsv, "tsentiment.tsv", function(d) { countySentiment.set(d.id, +d.sentiment); })
.await(ready);
/*
This function is used to initially draw of the US map with the initial data set
*/
function ready(error, cities)
{
//setup your SVG
svg = d3.select("#map_svg").append("svg")
.attr("width", width)
.attr("height", height);
//Draw the city lines
svg.append("g")
.attr("class", "uscities")
.selectAll("path")
.data(topojson.feature(cities, cities.objects.cities).features)
.enter().append("path")
.attr("d", path);
}
答案 0 :(得分:0)
请查看这是否对您有所帮助
var group = svg.selectAll("g")
.data(features)
.enter()
.append("g");
var areas = group.append("path")
.attr("d", path)
.attr("class", "area")
.attr("fill", "#DCDCDC")
.attr("stroke", "#FFFFFF");