es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Highcharts – Agregar un sufijo de valor de herramienta de sugerencia dinámicamente para cada serie.

Estoy trabajando en highcharts, intentando actualizar dinámicamente el valorSuffix del tooltip para cada serie, pero no logro que funcione. Cualquier ayuda será muy apreciada.

Aquí hay un código de ejemplo, el arreglo de datos contiene símbolos de moneda que deben mostrarse dinámicamente para cada serie.

this.chartConfig.ref$.subscribe(result => {
  result.series[0].points.forEach((pnt, i) => {
    if(pnt.series.tooltipOptions) {
      pnt.series.tooltipOptions.valueSuffix = data[i].currencySymbol;
    }
  });
});

Intenté con el método de actualización pero solo muestra el primer símbolo en cada serie.

this.chartConfig.ref.series.forEach((series, index) => {
  series.update({tooltip: {valueSuffix: data[index].currencySymbol}}, false);
});
this.chartConfig.ref.redraw(false);
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema podría estar relacionado con el uso de valueSuffix en las opciones de la información sobre herramientas. Una sugerencia podría ser utilizar la función formatter en las opciones de la información sobre herramientas y agregar el símbolo de la moneda dinámicamente en base a los datos de la serie. Aquí tienes un ejemplo:

    this.chartConfig.ref$.subscribe(result => {
      result.series.forEach((series, i) => {
        series.tooltip = {
          formatter: function() {
            const currencySymbol = data[i].currencySymbol;
            return this.x + ': ' + this.y + ' ' + currencySymbol;
          }
        }
      });
    });
    

    En este código, estamos iterando a través de las series en el gráfico y actualizando el objeto tooltip para incluir una función formatter. Dentro de esta función, podemos acceder a los datos de la serie utilizando this y agregar el símbolo de la moneda dinámicamente basándonos en el índice de datos utilizando data[i].currencySymbol.

    ¡Espero que esto sea de ayuda!

Comments are closed.