Jquery 高库存图表中出现错误。工具提示中未定义数据
我试图建立一个高库存图表,其中我在x轴上有一组时间戳,在y轴上有一组数字。此外,数组中还有一些其他数据,我希望在工具提示中显示这些数据。数据数组如下所示:Jquery 高库存图表中出现错误。工具提示中未定义数据,jquery,highcharts,highstock,Jquery,Highcharts,Highstock,我试图建立一个高库存图表,其中我在x轴上有一组时间戳,在y轴上有一组数字。此外,数组中还有一些其他数据,我希望在工具提示中显示这些数据。数据数组如下所示: data=[ { "ID": 9682533, "PONumber": "100869279", "y": 2, "x": 1470196365449 }, ...]; 工具提示格式化程序的功能是: tooltip: { formatter: function () {
data=[
{
"ID": 9682533,
"PONumber": "100869279",
"y": 2,
"x": 1470196365449
},
...];
工具提示格式化程序的功能是:
tooltip: {
formatter: function () {
console.log('inside formatter');
var s = '<b>' + Highcharts.dateFormat('%A, %b %e, %Y, %H:%M:%S', this.x) + '</b>';
$.each(this.points, function () {
s += '<br/> ID:= <b>'
+ this.point.ID
+ '</b><br/> Completion time:= <b>'
+ this.y
+ ' secs</b><br/>'
+ 'Purchase Order Number:= <b>'
+ this.point.PONumber
+ '</b><br/>';
});
return s;
}
}
工具提示:{
格式化程序:函数(){
log(“内部格式化程序”);
var s=''+Highcharts.dateFormat(“%A,%b%e,%Y,%H:%M:%s',this.x)+'';
$.each(this.points,function(){
s+='
ID:='
+这个.point.ID
+“
完成时间:=”
+这个
+“秒
”
+'采购订单编号:='
+这是我的观点
+“
”;
});
返回s;
}
}
然而,当我绘制数据时,我得到的ID和采购订单号的值是未定义的。当我缩放数据时,我可以在工具提示中看到正确的数据。JSFIDLE在这里:。解决这个问题的任何帮助都将是巨大的
编辑:一些答案和评论提到他们无法看到问题。因此附上截图
这无法工作,因为Highstock仅从数据对象中检索和使用x和y值+您引用的是不存在的This.point.ID/PONumber 这是“this”的console.log(this)输出 对象{x:1470196320000,y:2,点:数组[1]} 点数:数组[1] x:1470196320000
y:2我也无法在您的小提琴上重现-工具提示显示,并且控制台中未定义的工具提示值没有错误 fiddle数据是所有数据还是只是一个样本?我想知道这个问题是否与图表上的启用以及是否有更多数据有关。如果启用了
dataGrouping
,则会对x/y值进行近似处理,并且可能不会将其他工具提示项转移到该点
尝试关闭
数据分组
亲爱的考希克,我不明白你的问题。我正在JSFIDLE中尝试您的代码,我可以在工具提示中正确地看到ID和Puchase Order的值,而无需使用缩放。请问,你能更详细地解释这个问题吗?添加了一个相同的屏幕截图