我想創建一個具有多個(線性)軸的動態圖形。繪製座標軸後,我想(隨着新數據的到來)更改Data Domain並重繪/更新座標軸。我可以用D3選擇現有的軸並執行此操作,還是必須將每個軸顯式保存在我的代碼中?我希望我的問題不會讓人困惑。D3動態重繪Y軸
// init all Y-Axis
$.each(chart.YAxes, function (index) {
var yScale, yAxis;
yScale = d3.scale.linear().range([chartHeight, 0]);
yScale.domain([this.YMin, this.YMax]);
yAxis = d3.svg.axis()
.scale(yScale)
.ticks(10, this.Title)
.orient("left");
d3Chart.append("g")
.attr("class", "yAxis " + "y" + this.ID)
.call(yAxis);
......
// update Y-Axis (after new data arrives...)
var myYAxis = d3.select(".y" + yAxis.ID);
var myScale = myYAxis. **// get Scale ??**
myScale.domain([newYMin, newYMax]);
d3Chart.select(".y" + yAxis.ID)
.transition().duration(300).ease("sin-in-out")
.call(myYAxis);
thx ...!
你能提供一個小提琴嗎? –