我正在寻找特定系列的自定义工具提示。在其中,我尝试了多种方法使其正常运行,但无法成功。
我在CodeIgniter PHP框架中使用AJAX获取数据。

目前我有多个系列。但我不想在图中显示test1和test2。请考虑X轴值为10,以获取有关问题的确切信息。

测试系列数据:

[["01",0],["02",0],["03",0],["04",0],["05",0],["06",0],["07",0],["08",0],["09",0],["10",2068]


Test1系列数据:

[["01",0],["02",0],["03",0],["04",0],["05",0],["06",0],["07",0],["08",0],["09",0],["10",1510.2568],["11",0]]


Test2系列数据:

[["01",0],["02",0],["03",0],["04",0],["05",0],["06",0],["07",0],["08",0],["09",0],["10",4097],["11",0]]


对于highcharts系列测试,test1,test2,我的代码如下所示
response_data是一个变量,在该变量中,我正在AJAX响应中获得以上所有系列。

我的php页面的响应

{"test":[["01",0],["02",0],["03",0],["04",0],["05",0],["06",0],["07",0],["08",0],["09",0],["10",2068],["11",0],["12",0]],"test1":[["01",0],["02",0],["03",0],["04",0],["05",0],["06",0],["07",0],["08",0],["09",0],["10",1510.2568],["11",0],["12",0]],"test2":[["01",0],["02",0],["03",0],["04",0],["05",0],["06",0],["07",0],["08",0],["09",0],["10",4097],["11",0],["12",0]]}


图表:

tooltip: {
           formatter: function() {
            if(this.series.name=='Test'){
              var current_point=this.point.name;
              var test1=response_data.test1.current_point;
              var test2=response_data.test2.current_point;
              return "Test :"+this.y+"<br/>Test1 : "+test1+"test2 :+test2;
            }else{
             return this.series.name+': <b>'+this.y+'</b>';
            }
           }
          },
          series: [
              {
                name: 'Test',
                type: 'column',
                data: response_data.test
              },
              {
               name: 'test1',
               data: response_data['test1'],
               visible: false
              },
              {
               name: 'test2',
               visible: false,
               data: response_data['test2']
               }
          ]


点/ X轴10的输出:

Test:2068
Test1:1510.2568
Test2:4097

最佳答案

您将数据存储在数组中-您只需要使用工具提示格式化程序中的this.x值来引用它们:

tooltip: {
  formatter: function() {
    return '<b>Category: </b>'+this.key
          +'<br/><b>Test: </b>'+ this.y
          +'<br/><b>Test1: </b>'+ test1[this.x][1]
          +'<br/><b>Test2: </b>'+ test2[this.x][1];
  }
}


小提琴的例子:


http://jsfiddle.net/jlbriggs/hh2g6urw/

关于javascript - 如何从另一个系列或数据中获取值(value),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37155282/

10-14 15:27