0
我正在嘗試將縮放功能添加到我的條形圖中。我想要實現的是,當用戶將光標拖到某個區域時,您應該可以放大該區域,並且x軸值將更改爲顯示該月的天數。 正在關注this example我試圖合併相同的縮放和拖動功能。D3在X軸上縮放
但我似乎得到這個錯誤:
Error: <rect> attribute transform: Expected number, "translate(NaN,0)".
我試圖變焦功能做一次放大x軸應該顯示月變化(一月,二月,等等)到天(1月1日,1月2日,1月3日等)。 任何幫助將被附上。 下面是變焦功能的代碼:
function bListener() {
x.domain(brush.empty() ? x.domain() : brush.extent());
svg.selectAll(".bar")
.attr("transform", function(d) { console.log(d.date); return "translate(" + x(d.date) + ",0)"; });
svg.select(".x axis").call(xAxis);
}
感謝您的響應改變成
date object
。我改變了數據對象,但我的x軸似乎沒有更新。任何想法如何解決這個問題? http://jsfiddle.net/noobiecode/dty0s24k/35/ – user3837019您的xAxis函數使用月份繪製刻度 - '.orient('bottom') .ticks(d3.time.month) .tickFormat(d3.time.format ('%b%y'))'。簡單地稱呼它就像你一樣,不會改變蜱蟲,因爲你不會改變任何東西。你應該看看d3上的一些教程 - 開始並建立一個圖表,而不是跳入最終產品。它從長遠來看有所作爲。 – Craicerjack
我看了一下創建xAxis的位置,注意到了繪圖和格式。打算回到這裏發佈它,但你打敗了我。至於「跳入和最終產品」。我確實使用教程創建了圖表。我承認我對D3不太瞭解。 – user3837019