我在代码中使用d3.geo.algersUsa()
来创建示例地图
var projection = d3.geo.albersUsa()
.scale(600);
var path = d3.geo.path()
.projection(projection);
var svg = d3.select("#year_chart").append("svg")
.attr("width", width)
.attr("height", height);
svg.append("rect")
.attr("class", "background")
.attr("width", width)
.attr("height", height);
var g = svg.append("g");
for (var i = 0; i < state_data.length; i++){
var y = d3.scale.linear().range([ height, 0 ]);
y.domain([ 0, d3.max(data, function(d) {
return d['amount'];
}) ]);
g.append("g")
.attr("id", "states")
.selectAll("path")
.data(state_data)
.enter()
.append("g")
.attr("class","state-path")
.attr("state", function(d) {
return d.code;
});
svg.selectAll('.state-path')
.append("path")
.attr("d", path)
});
}
但是在控制台js中它正在返回
n(n)
我无法绘制图表,因为它没有获取路径
我已经包含了d3图书馆
<%= javascript_include_tag "http://d3js.org/d3.v3.min.js", :charset=>"utf-8" %>
<%= javascript_include_tag "http://d3js.org/d3.geo.projection.v0.min.js", :charset=>"utf-8" %>
请提供解决方案。
提前致谢!