2011-07-01 20 views
7

Estoy intentando modificar un gráfico de dispersión Highcharts con esta serie fechaHighcharts dispersan la tabla con un nombre por cada punto

series: [{ 
    data: [[1,2],[2,5]] 
}] 

de modo que pueda poner un nombre en cada punto, quiero mostrar el nombre de la información sobre herramientas. El API doc says un objeto de valores con nombre se puede definir como esto

series: [{ 
    data: [{ 
     name: 'Point 1', 
     x: 1, 
     y: 2 
    }, { 
     name: 'Point 2', 
     x: 2, 
     y: 5 
    }] 
}] 

pero parece que el valores X e Y no son recogidos. Ver mi jsfiddle ejemplo.

Respuesta

4

Como se indica en documentation, el campo de nombre es el nombre del punto como se muestra en la leyenda, información sobre herramientas, etiqueta de datos, etc. I updated your fiddle para incluir la biblioteca de Highcharts, y estoy viendo este comportamiento (es decir, si se desplaza sobre un punto, se muestra su etiqueta).

Si desea que las etiquetas del eje x se establezcan correctamente, debe asegurarse de que la sección xAxis de su configuración de gráfico no tenga una clave categories.

+3

Su violín no está funcionando para mí. Simplemente muestra "Serie 1" en ambos puntos. ¿Quizás una actualización de la biblioteca de Highcharts rompió el comportamiento deseado? –

+0

Violín actualizado: http://jsfiddle.net/TkMjZ/288/ –

3

También podría mostrar nombres en la sección de leyenda. Se ha actualizado la respuesta seleccionada por encima de here

series: [{ 
     name: 'Point 1', 
     data: [[3, 3]] 
    }, { 
     name: 'Point 2', 
     data: [[4, 8]] 
    }, { 
     name: 'Point 3', 
     data: [[9, 15]] 
    }] 
+0

¡esta parece ser la única respuesta que en realidad responde a la pregunta original! – Corone

+0

Sí, esta es la solución directa a la pregunta –

3

Ésta es una nueva característica de Highcharts 3.0. Usted tiene que definir el tipo de ejeX 'Categoría' y darle el nombre del punto en los datos si quieres que aparezca en el eje x:

xAxis: { 
    //categories: ['Green', 'Pink'], 
    type: 'category' 
}, 
... 
data: [{ 
     name: 'Green', 
     x: 1, 
     y: 2 
    }, { 
     name: 'Pink', 
     x: 2, 
     y: 5 
    }] 

Consulte su código jsFiddle actualización: here. Tenga en cuenta que he agregado la característica de formateo Tooltip para mostrar que point.x no tiene más significado en este contexto, solo point.name sigue siendo relevante.
Además, no puede tener dos puntos con diferente 'nombre' en la misma posición x.

2

Esta respuesta funciona para Highcharts 4.1.9.

Me tomó un largo tiempo averiguar por lo tanto quiero transmitirlo en caso de que alguien esté buscando esto también.

Su millaje puede variar para otras versiones.

 plotOptions: { 
      scatter: { 
       dataLabels: { 
        format: "{point.name}", 
        enabled: true 
       }, 
       enableMouseTracking: false 
      } 
     }, 
     series: [{ 
      name: 'Projects', 
      data: [{"name":"Point 1", "x":1,"y":2}, {"name":"Point 2", "x":4,"y":5}] 
     }] 

¿Cuáles son los puntos clave?

  1. Asegúrese de que los scatter.dataLabels está activada y el formato es {point.name}
  2. Asegúrese de que los datos están en el formato de {"name":"Point 1", "x":1,"y":2}
+2

{point.key} en lugar de {point.name} está trabajando aquí: información sobre herramientas: { headerFormat: '{series.name} ({point.key})
', pointFormat:' {point.x}, {point.y} ' } – bebbo

1

Como se mencionó en this comment, lo que funciona para mí en Highcharts 5.0.6 es:

{ 
    type: 'scatter', 
    tooltip: { headerFormat: '<strong>{point.key}</strong><br>' }, 
    data: [{ x: 0, y: 1, name: 'Whatever' }, ...] 
} 
0

Luché con este problema y después de encontrar la solución en la documentación Debo decir que el comportamiento tal como se diseñó se siente un poco inesperado.

por los documentos (aquí: https://api.highcharts.com/highcharts/plotOptions.scatter.tooltip), la información sobre herramientas no muestra todos los campos se pueden agregar a un punto de datos, sino más bien

Defaults to x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>.

Para mostrar el nombre del punto de datos (y cualquier otro campo desea), simplemente cambie el HTML representado por la información sobre herramientas. Por ejemplo, se puede visualizar el nombre de punto y coordenadas en la descripción mientras se quita el nombre de la serie de la siguiente manera:

chart: { 
    type: "scatter", 
} 
tooltip: { 
    headerFormat: '', 
    pointFormat: 'Name: <b>{point.name}</b><br/>Load time: <b>{point.y}</b><br/>Requests: <b>{point.x}</b>', 
}, 
Cuestiones relacionadas