6
私はD3コスチュームチャートのセレクタとして視覚化を使用しようとしています。私はSDKのドキュメンテーションに従っています。Microstrategy視覚化をセレクタとして使用するD3 costum chart
基本的に私は "私" varを宣言し、 "フィルタとして使用"オプションを有効にします。
var me = this;
this.addUseAsFilterMenuItem();
デSVG要素を追加するときに、私ははっきりとエンドselecionメソッドを追加:私はhasSelection属性を使用し、データを取得するとき
var g = d3.select(this.domNode).append("svg")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)
.append("g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")")
.on("click", function(d) {
if (event.target.classList.contains('bar')) {
me.clearSelections();
me.endSelections();
return true;
} else {
return true;
}
});
を:
var data = this.dataInterface.getRawData(mstrmojo.models.template.DataInterface.ENUM_RAW_DATA_FORMAT.TREE, {
hasSelection: true
}).children;
そして追加バーの "applyselection"メソッド:
g.selectAll(".bar")
.data(data)
.enter()
.append("rect")
.attr("class", "bar")
.attr("x", function(d) {
return x(d.name);
})
.attr("y", function(d) {
return y(d.value);
})
.attr("height", function(d) {
return height - y(d.value);
})
.attr("width", x.rangeBand())
.style("fill", function(d) {
})
.on("click", function(d) {
me.applySelection(d.selection);
});
しかし、動作しません。私はbar clickイベントでd.selectionをコンソールに管理しています。
私はこれに手を差し伸べることができますか?
ありがとうございます。