Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

415
Vistas
¿Cómo puedo vincular los botones de zoom para reaccionar al árbol d3?

Estoy tratando de descubrir cómo vincular los botones de zoom para reaccionar al árbol d3, sin embargo, no he encontrado un enfoque que funcione mientras se mantiene la posición.

La posición se restablece cada vez que actualizo el nivel de zoom, lo que significa que si hago una panorámica en algún lugar y ajusto el nivel de zoom, salta a la mitad del árbol.

Quiero algo como esto https://jsfiddle.net/vbabenko/jcsqqu6j/9/

 const TreeWrapper: FC<any> = ({ data }) => { const [zoomLevel, setZoomLevel] = useState(1); const scaleExtent = { min: 0.5, max: 3 }; const zoomIn = () => zoomLevel < scaleExtent.max && setZoomLevel((prevLevel) => prevLevel + 0.25); const zoomOut = () => zoomLevel > scaleExtent.min && setZoomLevel((prevLevel) => prevLevel - 0.25); return ( <Card title={null}> <button onClick={zoomIn} type="button"> + </button> <button onClick={zoomOut} type="button"> - </button> <Tree zoom={zoomLevel} scaleExtent={scaleExtent} translate={translate} zoom={zoomLevel} zoomable={true} initialDepth={1} collapsible={true} separation={{ siblings: 2, nonSiblings: 2 }} renderCustomNodeElement={(rd3tProps) => renderForeignObjectNode({ ...rd3tProps, foreignObjectProps }) } orientation="vertical" data={data} /> </Card> ); };
about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda