如何删除或替换 SVG 内容?

2022-08-30 00:59:40

我有一段JavaScript代码,它创建(使用D3.js)一个包含图表的元素。我想根据来自使用AJAX的Web服务的新数据更新图表,问题是每次我单击更新按钮时,它都会生成一个新的,因此我想删除旧数据或更新其内容。svgsvg

这是来自JavaScript函数的一个片段,我在其中创建了:svg

var svg = d3.select("body")
        .append("svg")
        .attr("width", w)
        .attr("height", h);

如何删除旧元素或至少替换其内容?svg


答案 1

解决方案如下:

d3.select("svg").remove();

这是 D3.js 提供的函数。remove


答案 2

如果你想摆脱所有的孩子,

svg.selectAll("*").remove();

将删除与 svg 关联的所有内容。