1つ以上の値を持つ属性にディメンションを作成する方法はありますか?たとえば、D3クロスフィルタ寸法の離散フィルタ
{quantity: 2, total: 190, tip: 100, items: ["apple","sandwich"],
{quantity: 2, total: 190, tip: 100, items: ["ice-cream"]},
{quantity: 1, total: 300, tip: 200, items: ["apple", "coffee"]}
私の目標は、序数の値を持つ次元に沿ってエントリをフィルタリングすることができるクロスフィルタを作成することです。 "私は項目 'リンゴ'を持つすべてのエントリが欲しいと言うことを許可するフィルタ/ディメンションを書く方法はありますか?
私が考えることができる唯一の回避策は、各アイテムのディメンションを作成することです。同様に:
var paymentsByApple = payments.dimension(function(d) { return $.inArray("apple", d.items); });
var paymentsByCoffee = payments.dimension(function(d) { return $.inArray("coffee", d.items); });
// and one for every possible item
主な問題は、すべての異なるオブジェクトを列挙してハードコードしたくないということです。さらに、可能性のあるさまざまなアイテムがたくさんあることになります。これを行うよりスマートな方法はありますか?
ありがとうございます!