D3.js 隐藏并显示带有转换的svg元素

D3.js 隐藏并显示带有转换的svg元素,d3.js,D3.js,如何使用转换隐藏和显示svg元素? 我尝试以下代码: <div id="bubble"></div> <div id="buttonHide"><button>Hide</button></div> <div id="buttonShow"><button>Show</button></div> d3.select("#bubble") .append("svg")

如何使用转换隐藏和显示svg元素? 我尝试以下代码:

<div id="bubble"></div>
<div id="buttonHide"><button>Hide</button></div>
<div id="buttonShow"><button>Show</button></div>

d3.select("#bubble")
    .append("svg")
    .append("g")
    .append("circle")
    .attr("class", "bubble")
    .attr("transform", "translate(100, 100)")
    .attr("r", 50)
    .attr("fill", "black");

d3.select("#buttonHide").on("click", function() {
    d3.select(".bubble").transition().attr('visibility', 'hidden').duration(1000);
});

d3.select("#buttonShow").on("click", function() {
    d3.select(".bubble").transition().attr('visibility', 'visible').duration(1000);
});

隐藏
显示

您可以使用
不透明度
样式,而不是切换
可见性
属性:

d3.选择(“气泡”)
.append(“svg”)
.附加(“g”)
.附加(“圆圈”)
.attr(“类”、“气泡”)
.attr(“转换”、“翻译(100100)”)
.attr(“r”,50)
.attr(“填充”、“黑色”)
.样式(“不透明”,1);
d3.选择(“#按钮侧”)。在(“单击”,函数()上{
d3.选择(“.bubble”).transition().duration(1000).样式(“不透明度”,0);
});
d3.选择(“#按钮显示”)。在(“单击”,函数(){
d3.选择(“.bubble”).transition().持续时间(1000).样式(“不透明度”,1);
});

隐藏
显示