我有一个像这样的 CSV 文件(一个更大文件的简化版本):
year,state,value
2012,Alabama,12
2012,New York,17
2012,Iowa,16
2012,Oregon,10
2012,Montana,14
我想从爱荷华州这样的州提取值(value)。我有一个函数给我一个对象。
var t= data.filter(function(d) { return d.state == "Iowa" });
如何从该数组中提取值(“16”)?谢谢。
最佳答案
您的数据数组可能如下所示。
var data = [{"year": "2012", "state": "Alabama", "value": "12"},
{"year": "2012", "state": "New York", "value": "17"},
{"year": "2012", "state": "Iowa", "value": "16"},
{"year": "2012", "state": "Oregon", "value": "10"},
{"year": "2012", "state": "Montana", "value": "10"}];
要提取值,您可以这样做
data.filter(function(d) { return d.state === "Iowa" })[0].value;
var data = [{"year": "2012", "state": "Alabama", "value": "12"},
{"year": "2012", "state": "New York", "value": "17"},
{"year": "2012", "state": "Iowa", "value": "16"},
{"year": "2012", "state": "Oregon", "value": "10"},
{"year": "2012", "state": "Montana", "value": "10"}];
var value = data.filter(function(d) { return d.state === "Iowa" })[0].value;
document.getElementById("my-val").innerHTML = value;
<p id="my-val"></p>
你的想法是正确的。 filter
函数返回一个新数组,在本例中元素是一个对象。要访问此元素,请使用括号表示法,然后获取 value
属性。
关于javascript - d3 从 csv 文件中提取单个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33266096/