Aumentar e diminuir o raio de um círculo usando transição d3
Eu estou tentando criar um efeito de pulso em um círculo aumentando e diminuindo seu raio. Eu gostaria que o círculo crescesse e diminuísse com base em um determinado conjunto de dados. Eu só posso obter a função de transição para o éter aumentar ou diminuir o raio, mas não ambos.
d3 cria automaticamente um círculo diferente para cada valor na matriz. Como posso fazer com que o raio de um círculo cresça e encolha à medida que se repete no array? uma versão simples do que tenho até agora está abaixo. Obrigado por qualquer ajuda que você possa oferecer.
dataset = [30, 80, 150, 90, 20, 200, 180]
var svg = d3.select("body")
.append("svg")
.attr("width", w)
.attr("height", h);
var circle = svg.selectAll("circle")
.data(dataset)
.enter()
.append("circle");
circle
.attr("cx", 500)
.attr("cy", h/2)
.attr("r", dataset[0])
.attr("fill", "orange");