[英]d3 how to add ID from geojson to path
我有以下代表印度每個州的geojson文件,作為一個簡單的示例,一個聲明看起來像這樣(為了簡潔起見刪除了坐標):
{
"type": "FeatureCollection",
"features": [
{ "type": "Feature", "properties": {}, "id":"AndhraPradesh", "geometry": { "type": "MultiPolygon", "coordinates": [ ......
我正在嘗試獲取生成的SVG的路徑,以使其具有geojson形狀的ID,以便獲得類似以下內容的代碼:
<svg width="600" height="600"><g id="india"><path id="AndhraPradesh" d="..."></path>
諸如此類的內容及其變體似乎無法正常工作,我無法找到將路徑與ID明確關聯的示例,因此我不確定其中的秘密。
var w = 600;
var h = 600;
var proj = d3.geo.mercator();
var path = d3.geo.path().projection(proj);
var t = proj.translate(); // the projection's default translation
var s = proj.scale() // the projection's default scale
var map = d3.select("body").append("svg")
.attr("width", w)
.attr("height", h)
.call(initialize);
var india = map.append("g")
.attr("id", "india");
d3.json("india_states.geojson", function (json) {
india.selectAll("path")
.data(json.features)
.enter().append("path")
.attr("d", path)
.attr("id", id)
});
任何幫助,不勝感激。
這應該可以解決問題:
.attr("id", function(d) { return d.id; })
它返回與路徑關聯的數據的id
字段。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.