使用d3.js
通過獲取100個對象的數組繪製一系列矩形。儘管console.log(data)
顯示正在檢索新數據,但新數據點似乎沒有附加任何矩形。d3.js圖表未更新新數據
是.enter().append()
使用不正確?
function init() {
var width = 800,
height = 400,
margin = 50;
chart = d3.select('#chart')
.append('svg:svg')
.attr('width', width)
.attr('height', height);
}
function do_update() {
data = fetch_latest_top100();
console.log(data)
chart.selectAll('rect')
.data(data)
.enter()
.append('svg:rect')
.attr('x', function(d) { return x(d.x); })
.attr('y', function(d) { return y(d.y); })
.attr('height', function(d) { return d.value; })
.attr('width', function(d) { return 3 });
}
的jsfiddle:http://jsfiddle.net/BU8cA/
這將是更好,如果你有一個小提琴(http://jsfiddle.net/)或plunkr http://plnkr.co/edit/?p=catalogue這將有助於看到問題生活 –
我不知道這是一個複製/粘貼的問題,但你錯過了一個「)」之後y(dy在y attr,這可能是錯誤 – tomtomtom
@tomtomtom複製粘貼問題,更正了錯字,謝謝! – Nyxynyx