Highchart在工具提示中乘以数据

时间:2017-06-20 13:36:34

标签: javascript php highcharts

我想将多个数据放入1个工具提示中。共享是错误的,这是正确的。一行应该只显示自己的值。

series: [
        {
            name: 'Installation',
            data: [43934, 52503, 57177, 69658, 97031, 119931, 137133, 154175, 43934, 52503, 57177, 69658, 97031, 119931, 137133, 154175],
            data2: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16],
            data3: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16],
        }, 
        {
            name: 'Other',
            data: [12908, 5948, 8105, 11248, 8989, 11816, 18274, 18111, 12908, 5948, 8105, 11248, 8989, 11816, 18274],
            data2: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16],
            data3: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16],
        },
        ]

在上面的代码中,我想从查询中添加第二个和第三个数据。

tooltip: {
                pointFormat: '{series.name}: <b>{point.y}</b><br/> Second: {point.data2} <br> Third: {point.data3}',
            },

如何添加这些&#39; point.data2&#39;和&#39; point.data3&#39;值进入工具提示?我得到null作为回报。

提前致谢。

2 个答案:

答案 0 :(得分:1)

如果你的图表你应该能够使用pointFormatter而不是pointFormat,而在pointFormatter里面可以得到你的第二和第三个数据。

http://api.highcharts.com/highcharts/tooltip.pointFormatter

  tooltip: {
    pointFormatter: function() {
      console.log(this)
      var string = this.series.name + ': ' + this.y + '<br>';
      string += 'Second: ' + this.series.options.data2[this.index] + '<br>';
      string += 'Third: ' + this.series.options.data3[this.index];
      return string;
    }
  },

您可以在以下链接中找到带有pointFormatter的图表示例: http://jsfiddle.net/km8bovdz/

答案 1 :(得分:0)

是的,这将返回null,因为您的store_item = StoreItem.objects.last() # or get or whatever you need last_movement_total_count = store_item.last_movement_total_count data2数组不会以任何方式与data3相关联。

point位于数据数组中,其他数据元素应附加到每个point,而不是每个point

通过使每个数据点成为数据数组中的对象(如此(发布数据的子集))来实现此目的:

series

小提琴示例: