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

184
Vistas
Múltiples información sobre herramientas que no se muestran correctamente en reaccionar

Estoy trabajando con gráficos de reacción D3, he creado gráficos y funciona bien.

Que he hecho

  • Tengo varios gráficos que se actualizan en algunos intervalos de tiempo, algo así como datos en vivo
  • Entonces, para lograr esto, utilizo el efecto y actualizo mis gráficos cada segundo, y mis datos en los gráficos se actualizan correctamente.
  • He dado una información sobre herramientas al pasar el mouse sobre la barra, para que el usuario pueda verificar los datos de cada barra o línea.

Usando el siguiente código para mostrar la información sobre herramientas

 .on("mousemove", function (event, d) { // this whole code is when I hover that perticular bar d3.select(this) .transition() .duration("50") .attr("opacity", 0.6) .attr("x", (a) => xScaleBars(a.timeline) - 3) .attr("width", xScaleBars.bandwidth() + 6) .style("filter", "url(#glow)"); div.transition().duration(50).style("opacity", 1); div .html( `</text><text"></br> value : ${d.dataToShow} <br/> </text><text"></br> Month : ${d.month} ` ) .style("left", event.pageX - 58 + "px") .style("top", event.pageY - 140 + "px"); }) .on("mouseout", function (d, i) { // this is when I move cursor out of that bar d3.select(this) .transition() .duration("50") .attr("width", xScaleBars.bandwidth()) .attr("x", (a) => xScaleBars(a.timeline)) .style("filter", "none") .attr("opacity", "1"); div.transition().duration("50").style("opacity", 0); })

Problema al que me enfrento

  • El problema es que cuando coloco el cursor sobre un componente del gráfico, se muestra la información sobre herramientas, y cuando coloco el cursor sobre el otro, ambos se muestran al mismo tiempo. Se muestra así.

  • Lo que estoy tratando de hacer es mostrar la información sobre herramientas cuando paso el cursor por la barra de cualquier gráfico y luego lo oculto, probé debajo del código

d3.select("svg").selectAll(".tooltipCHart").remove();

Pero no resuelve mi problema, creo que me falta una pequeña parte

aquí está mi sandbox de código que probé

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El problema es que está creando una nueva división de información sobre div cada vez que vuelve a renderizar el gráfico.

Un mejor enfoque es tener un div de información sobre herramientas oculto al principio (en el render / retorno de su componente de función) y luego simplemente modificar su contenido y estilo (opacidad: 1) en mouseover y mouseout . Realice un seguimiento de la información sobre herramientas div usando un ref .

Ver códigos de trabajoy cuadro (solo modifiqué el gráfico 1, puede hacer cambios similares al gráfico 2)

about 4 years ago · Juan Pablo Isaza Denunciar
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