到目前为止,我导入的唯一库是d3,我检查了d3.js文件以确保函数在那里。它是。
我试图用D3和AngularJS书中的数据可视化来做这个例子。这是代码[直接来自书籍,删除了评论]:
<svg width="800" height="500"></svg>
<script type="text/javascript">
var data = [];
setInterval(function(){
if (data.length < 8) {
data.push(Math.random());
}
else {
data = [];
}
draw();
}, 1000);
function draw() {
var svg = d3.select('svg');
var circles = svg.selectAll('circle').data(data);
circles
.attr('fill', 'orange');
circles.enter()
.append('circle')
.attr('fill', 'red')
.attr('r', 40)
.attr('cx', function(d, i) { return i*100 + 50; })
.attr('cy', 50);
circles
.style('stroke', 'black');
circles.exit()
.delay()
.remove();
}
具体问题是
circles
.exit()
.delay()
.remove();
它说延迟功能&#34;不是功能&#34;即使它是。我尝试将完全从书中移植的代码转换为一个全新的项目,但它并不起作用。 (如果有所不同,我会使用Chrome浏览器。)
由于
答案 0 :(得分:3)
delay()
不是selections
的函数。但是,您可以调用delay()
进行转换。所以:
circles
.exit()
.transition()
.delay()
.remove();