Necesito saber exactamente el ancho y la altura de un g
elemento arbitrario en mi SVG
porque necesito dibujar un marcador de selección a su alrededor una vez que el usuario ha hecho clic en él.
Lo que he visto en internet es algo así como: d3.select("myG").style("width")
. El problema es que el elemento no siempre tendrá un atributo de ancho explícito establecido. Por ejemplo, cuando creo un círculo dentro de g
, tendrá radious ( r
) en lugar del ancho. Incluso si uso el window.getComputedStyle
método en a circle
, devolverá "auto".
¿Hay alguna forma de calcular el ancho de una selección arbitraria svg
en D3
?
Gracias.
getBoundingClientRect()
lugar de solo SVGgetBBox()
. Así:d3.select("body").node().getBoundingClientRect().width