Javascript 如何将值传递给highcharts中不在x轴和y轴上的工具提示

Javascript 如何将值传递给highcharts中不在x轴和y轴上的工具提示,javascript,highcharts,Javascript,Highcharts,我需要在工具提示上显示其他值:名称、计数和另一个值(android)。我在一篇文章中看到了这一点,我试图创建一个类似的,但我不能得到相同的结果 $(函数(){ var小时=3600*1000; 变量选项={ 图表:{ renderTo:'容器', 键入:“行”, 选项3D:{ 启用:对, 阿尔法:0, 贝塔:0, 深度:0, 视距:25 } }, 标题:{ 文本:“” }, 副标题:{ 文本:“” }, 图例:{ 已启用:false }, 学分:{ 已启用:false }, xAxis:{ 标

我需要在工具提示上显示其他值:名称、计数和另一个值(android)。我在一篇文章中看到了这一点,我试图创建一个类似的,但我不能得到相同的结果

$(函数(){
var小时=3600*1000;
变量选项={
图表:{
renderTo:'容器',
键入:“行”,
选项3D:{
启用:对,
阿尔法:0,
贝塔:0,
深度:0,
视距:25
}
},
标题:{
文本:“”
},
副标题:{
文本:“”
},
图例:{
已启用:false
},
学分:{
已启用:false
},
xAxis:{
标签:{
对齐:“左”,
风格:{
颜色:“#423D3C”,
fontWeight:'正常',
fontFamily:“开放式SAN”
}
},
showLastLabel:false,
勾选位置:“on”,
位置:'内部',
宽度:0,
像素间隔:60,
线宽:2,
线条颜色:“#423D3C”,
maxPadding:0,
数字:0,
网格线宽:0,
偏移量:0,
是的,
键入:“日期时间”,
日期时间标签格式:{
日期:'%H:%M'
},
恩东蒂克:是的
},
亚克斯:{
定位器:函数(){
var maxDeviation=Math.ceil(Math.max(Math.abs(this.dataMax)、Math.abs(this.dataMin));
var HALFMAXDERVISION=Math.ceil(最大偏差/2);
返回[0,半最大偏差,最大偏差];
},
标题:{
文本:“用户”
}
},
工具提示:{
背景颜色:“#1B1A1A”,
边框颜色:“#1B1A1A”,
十字准星:没错,
影子:错,
风格:{
颜色:'白色',
fontSize:'12px',
填充:“8px”
},
启用:对,
十字准星:错,
分享:错,
快照:30,
格式化程序:函数(){
变量s=''+Highcharts.dateFormat('%H:%M',
新日期(this.x))+“”;
$.each(this.points,function(){
s+='
'+this.series.name+':'+ point.y++'m'++'
'+this.series.android++':'+ this.series.android+'m'; log(this.series.android); }); 返回s; }, 分享:真的 }, 打印选项:{ 行:{ //dashStyle:“短点”, 线宽:2 }, 系列:{ 起点:0*小时, 时间间隔:小时, }, 数据分组:{ 已启用:false }, 标记:{ 启用:false, 国家:{ 悬停:{ 已启用:true } }, 符号:“圆圈” }, }, 系列:[], }; $.getJSON('data.json',函数(列表){ var新闻系列; $。每个(列表、功能(i、项目){ newseries={}; newseries.name=item.name; newseries.data=item.data; newseries.android=item.android; 选项.series.push(新闻系列); }); var图表=新的Highcharts.图表(选项); console.log(options.series); }); });
这是您的
data.json
文件的问题。按照文档中提到的格式更改值。例如:

[
      {
        "name":"Today",
        "data":[[17,0],[5,0], [27,13], [0,0], [28,14], [0,0], [27,8], [0,0], [25,12], [0,0], [27,20], [28,0], [26,22], [0,0], [0,17], [0,19], [60,0], [0,0], [46,0], [0,0], [0,0], [0,0], [0,20], [0,21]]
      }
 ]
并根据此更改工具提示格式化程序功能。

这里的
modified_data
是包含在工具提示中显示exta信息所需的额外数据的数据对象

  var newseries;
  $.each(jsond, function(i, item) {
    var modified_data = [];

    $.each(item.data, function(j) {
      modified_data.push({
        y: item.data[j],
        android: item.android[j]
      })
    })

    newseries = {};
    newseries.name = item.name;
    newseries.data = modified_data;
    //newseries.android = item.android;
    options.series.push(newseries);
  });
工具提示格式化程序

  formatter: function() {
    var s = '<b>' + Highcharts.dateFormat('%H:%M',
      new Date(this.x)) + '</b>';
    $.each(this.points, function() {
      //console.log(this)
      s += '<br/>' + this.series.name + ': ' +
        this.y + 'm' + '<br/>' + 'Android' + ': ' +
        this.point.android + 'm';
    });

    return s;
  },
格式化程序:函数(){
变量s=''+Highcharts.dateFormat('%H:%M',
新日期(this.x))+“”;
$.each(this.points,function(){
//console.log(这个)
s+='
'+this.series.name+':'+ 这个.y++'m'+'
'+'Android'+':'+ this.point.android+'m'; }); 返回s; },
片段
$(函数(){
var小时=3600*1000;
变量选项={
图表:{
renderTo:'容器',
键入:“行”,
选项3D:{
启用:对,
阿尔法:0,
贝塔:0,
深度:0,
视距:25
}
},
标题:{
文本:“”
},
副标题:{
文本:“”
},
图例:{
已启用:false
},
学分:{
已启用:false
},
xAxis:{
标签:{
对齐:“左”,
风格:{
颜色:“#423D3C”,
fontWeight:'正常',
fontFamily:“开放式SAN”
}
},
showLastLabel:false,
勾选位置:“on”,
位置:'内部',
宽度:0,
像素间隔:60,
线宽:2,
线条颜色:“#423D3C”,
maxPadding:0,
数字:0,
网格线宽:0,
偏移量:0,
是的,
键入:“日期时间”,
日期时间标签格式:{
日期:'%H:%M'
},
恩东蒂克:是的
},
亚克斯:{
定位器:函数(){
var maxDeviation=Math.ceil(Math.max(Math.abs(this.dataMax)、Math.abs(this.dataMin));
var HALFMAXDERVISION=Math.ceil(最大偏差/2);
返回[0,半最大偏差,最大偏差];
},
标题:{
文本:“用户”
}
},
工具提示:{
背景颜色:“#1B1A1A”,
边框颜色:“#1B1A1A”,
十字准星:没错,
影子:错,
风格:{
颜色:'白色',
fontSize:'12px',
填充:“8px”
},
启用:对,
十字准星:错,
分享:错,
快照:30,
格式化程序:函数(){
变量s=''+Highcharts.dateFormat('%H:%M',
新日期(this.x))+“”;
$.each(this.points,function(){
//console.log(这个)
s+='
'+this.series.name+':'+ 这个.y++'m'+'
'+'Android'+':'+ this.point.android+'m'; }); 返回s; }, 分享:真的 }, 打印选项:{ 行:{ //dashStyle:“短点”, 线宽:2 }, 系列:{ 起点:0*