私はnvd3
によって提供される機能を使用して見ることができまさか、私はちょうどベースd3
でそれをハックしたいが:
setTimeout(function(){
var area = d3.svg.area()
.x(function(d) { return chart.xScale()(d.x); })
.y0(0)
.y1(function(d) { return chart.yScale()(d.y); });
var t = d3.select(".nv-series-2"),
d = t.datum().values;
t.append("path")
.attr("d", area(d))
.style("fill", "steelblue");
}, 10);
フィドルhereを更新しました。コメントどのようにこの狂気について
FOR
EDITS:
var area = d3.svg.area()
.x(function(d) {
return chart.xScale()(d.x);
})
.y0(0)
.y1(function(d) {
return chart.yScale()(d.y);
});
function addArea() {
setTimeout(function() {
d3.selectAll("#cust-fill").remove();
d3.selectAll('.nv-group')
.each(function(d) {
if (d.key === "Another sine wave") {
var t = d3.select(this),
d = t.datum().values;
t.append("path")
.attr("id", "cust-fill")
.attr("d", area(d))
.style("fill", d.color)
.style("opacity", ".3");
}
})
}, 100);
}
nv.dispatch.render_end = addArea;
chart.dispatch.stateChange = addArea;
がfiddleを更新しました。
これは最初は機能しますが、一部のシリーズを選択して選択を解除すると機能しなくなります。いくつかの回避策がありますか? – LeoGardel
@LeoGardel、上記の編集を参照してください。 – Mark
うわー!ほぼ完璧に動作します。私はそれを使用するつもりです。ありがとう! – LeoGardel