我正在使用d3.js
制作玩具饼图我的饼图有3个切片。我想知道是否可以在单击饼图切片时调用函数。
答案 0 :(得分:3)
function animateFirstStep(){
d3.select(this)
.transition()
.attr("d",arc1);
/* .attr("d", arc2)
.style("fill", "black"); */
/* .style("stroke", "black")
.style("stroke-width", 1); */
};
function animateSecondStep(){
d3.select(this)
.transition()
.ease("elastic")
.duration(1500)
.attr("d", arc)
.style("fill", function(d) { return color(d.data.trName); });
/* .style("stroke", "white")
.style("stroke-width", 0); */
};
var g = svg.selectAll(".arc")
.data(pie(data.HubActivity.hubWorkloadList))
.enter().append("g")
.attr("class", "arc");
g.append("path")
.attr("d", arc)
.style("fill", function(d) { return color(d.data.trName); })
.on("mouseover", animateFirstStep)
.on("mouseout", animateSecondStep);
我认为这会有所帮助......当你将鼠标悬停在任何弧形功能上时会被触发你可以将它改为点击