我使用d3.js在网页上显示外部json文件中的一些数据。为了保持数据更新,我添加了setInterval()函数。问题是我需要先删除以前的svg元素来更新数据。我可以这样做吗?这是我的代码:
setInterval(function() {
d3.json("data.json", function (data)
{
var svgContainer = d3.select("body").append("svg")
.attr("width", "100%")
.attr("height", 800);
var text = svgContainer.selectAll("text")
.data(data[0].Bodenfeuchtigkeit)
.enter()
.append("text");
var textLabels = text
.attr("x", "15%")
.attr("y", 475)
.attr("font-family", "Open Sans, sans-serif")
.attr("font-size", 75)
.attr("fill", "green")
.text(data[0].Bodenfeuchtigkeit + " %");
var text1 = svgContainer.selectAll("text1")
.data(data[0].Luftfeuchtigkeit)
.enter()
.append("text");
var text1Labels = text1
.attr("x", "45%")
.attr("y", 475)
.attr("font-family", "Open Sans, sans-serif")
.attr("font-size", 75)
.attr("fill", "green")
.text(data[0].Luftfeuchtigkeit + " %");
var text2 = svgContainer.selectAll("text2")
.data(data[0].Temperatur)
.enter()
.append("text");
var text2Labels = text2
.attr("x", "75%")
.attr("y", 475)
.attr("font-family", "Open Sans, sans-serif")
.attr("font-size", 75)
.attr("fill", "green")
.text(data[0].Temperatur + " \u00B0C");
})
}, 3000);