2017-10-29 7 views
1

私は「犯罪のカテゴリ説明」=「THEFT」と 「犯罪のカテゴリ説明」=「BATTERY」データをフィルタ処理しようとするcsvファイルD3のデータのフィルタリング

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" })) 

を使用し、それは動作しません。すべての理想はなぜですか?

出力は次のようになります。あなたはCrime Category DescriptionTHEFTまたはBATTERYあるオブジェクトを維持したい

THEFT, 333, 4 
THEFT, 444, 3 
BATTERY, 456, 5 
BATTERY, 55, 3 
+0

あなたのデータを見てみましょう。あなたはそれが犯罪 'THEFT' **と**' BATTERY'ことも可能だと思いますか?それ以外に、ここには「キー」プロパティはありません。巣がある場合は、** exact **データ配列を投稿してください。その上に、要素を追加した後に 'data' **を呼び出さないでください。 –

+0

@GerardoFurtadoはい...混乱しているようです...そのため、データを削除したいのです –

+0

あなたの質問を編集して、正確なデータ配列と予想される結果を投稿してください。 –

答えて

0

、ないTHEFTBATTERY、不可能です。

したがって、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>