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