我有一个简单的问题。这是我的代码:
d3.csv("test1.csv", function(data) {
var year = "state";
.domain([
d3.min(data, function(d) { return d.value; }),
d3.max(data, function(d) { return d.value; })
]);
我在这里查询csv文件。 d3.min和max使用“return d.value;”返回名为“value”的coloumn。
是否可以在此调用中将此年份变量定义在此代码之上,而不是从列名称中硬编码“value”一词?
我想使用变量,因为我可以通过一次更改来改变它。
我已经尝试过返回d.year,但这显然会找到一个名为year的列而不是我的变量year。
谢谢。答案 0 :(得分:3)
使用括号语法:
var year = "state";
// ...
.domain([
d3.min(data, function(d) { return d[ year ]; }),
d3.max(data, function(d) { return d[ year ]; })
]);
d.year
引用属性year
,因为它只是一个标识符。
如果要引用变量year
并因此使用其内容作为标识符,则必须使用括号语法。