我有 csv 文件
Crime Category Description, Crime Code, Month Of Arrest
NONE, 123, 1
NONE, 234, 4
THEFT, 333, 4
THEFT, 444, 3
BATTERY, 456, 5
BATTERY, 55, 3
我尝试过滤“犯罪类别描述”=“盗窃”的数据并且 “犯罪类别描述”=“电池”。 为此,我使用
d3.csv("Urbana_Police_Arrests_Since_1988.csv", function(error,data){
...
.enter().append("rect")
.data(data.filter(function(d){return d.key = "THEFT" && d.key == "BATTERY" }))
不幸的是,它不起作用。知道为什么吗?
输出应该是:
THEFT, 333, 4
THEFT, 444, 3
BATTERY, 456, 5
BATTERY, 55, 3
最佳答案
您想要保留犯罪类别描述
为THEFT
或BATTERY
而不是的对象盗窃
和 电池
,这是不可能的。
因此,请使用 OR (||) operator :
var csv = `Crime Category Description, Crime Code, Month Of Arrest
NONE, 123, 1
NONE, 234, 4
THEFT, 333, 4
THEFT, 444, 3
BATTERY, 456, 5
BATTERY, 55, 3`;
var data = d3.csvParse(csv);
var filtered = data.filter(function(d) {
return d["Crime Category Description"] === "THEFT" || d["Crime Category Description"] === "BATTERY"
})
console.log(filtered)
<script src="https://d3js.org/d3.v4.min.js"></script>
关于javascript - d3 过滤数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47001302/