Highcharts散点图,每个点都有一个名称

时间:2011-07-01 18:13:13

标签: highcharts

我正在尝试使用此日期系列调整Highcharts散点图

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

这样我就可以在每个点上添加一个名称,我想在工具提示中显示该名称。 命名值的API doc says对象可以像这样定义

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

但似乎没有拾取x和y值。请参阅我的jsfiddle示例。

6 个答案:

答案 0 :(得分:5)

这个答案适用于Highcharts 4.1.9。

花了很长时间才弄清楚因此我想传递它以防万一有人也在寻找它。

其他版本的里程可能会有所不同。

       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}]
        }]

关键点是什么?

  1. 确保已启用scatter.dataLabels且格式为{point.name}
  2. 确保数据格式为{"name":"Point 1", "x":1,"y":2}

答案 1 :(得分:3)

documentation中所述,名称字段是点的名称,如图例,工具提示,dataLabel等所示。我updated your fiddle包括highcharts库,我看到这种行为(即如果我将鼠标悬停在一个点上,则会显示其标签)。

如果您希望正确设置x轴标签,则需要确保图表配置的xAxis部分没有categories键。

答案 2 :(得分:3)

您还可以在图例部分显示名称。更新了here

上方的所选答案
series: [{
        name: 'Point 1',
        data: [[3, 3]]
    }, {
        name: 'Point 2',
        data: [[4, 8]]
    }, {
        name: 'Point 3',
        data: [[9, 15]]
    }]

答案 3 :(得分:3)

这是HighCharts 3.0中的新功能。您必须将xAxis类型定义为“类别”,并在数据中显示该点的名称(如果您希望它出现在xAxis上):

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

请参阅更新的jsFiddle代码:here。 请注意,我添加了工具提示格式化功能,以显示point.x在此上下文中没有更多含义,只有point.name保持相关。
另外,您不能在同一个x上有两个具有不同“名称”的点位置。

答案 4 :(得分:2)

this comment中所述,在Highcharts 5.0.6中对我有用的是:

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

答案 5 :(得分:2)

我在解决这个问题时遇到了困难,在文档中找到解决方案后,我必须说出设计的行为会让人感到意想不到。

根据文档(此处:https://api.highcharts.com/highcharts/plotOptions.scatter.tooltip),工具提示不会显示您可以添加到数据点的所有字段,而是

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

要显示数据点名称(以及您想要的任何其他字段),只需更改工具提示呈现的HTML即可。例如,您可以在删除系列名称时显示工具提示中的点名称和坐标,如下所示:

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