[英]Highcharts - advanced tooltip functionality needed
使用带堆叠法线的面积图进行绘图时出现问题。 我在这里问的最后一个问题是: Highcharts帮助-面积图堆叠
基本上是在问如何在不规范数据的情况下绘制要堆叠的值。 有人告诉我可以从另一个序列中减去一个序列,以使图形正确显示,但是,由于此计算,悬停时的值会出现偏差。
示例:之前:
Series Total: [0,0,0,1,1,2,3]
Series In-Service: [0,0,0,0,0,1,2]
因此,我修复了数据以图形方式对其进行绘制:
Series Total: [0,0,0,1,1,1,1]
Series In-Service: [0,0,0,0,0,1,2]
现在,它的图形很好,但工具提示错误,例如最后一个数据点应为:
Series Total: 3
Series In-Service: 2
但它显示:
Series Total: 1
Series In-Service: 2
而且由于工具提示无法访问其他点,因此我们无法进行修复计算来显示它。 除非我使用shared:true,否则我不能使用shared,因为由于我拥有的所有系列,工具提示过大。
如果不清楚,请提出任何问题,我确实需要一些帮助。
设置系列数据时,请使用对象列表。 您可以将其他选项添加到数据点对象,然后从工具提示格式化程序访问它。
有关示例,请参见http://jsfiddle.net/jgdreyes/JvSBk/ 。
var seriesTotal = [
{x: 0, y: 0, customTooltip: 0},
{x: 1, y: 0, customTooltip: 0},
{x: 2, y: 0, customTooltip: 0},
{x: 3, y: 1, customTooltip: 1},
{x: 4, y: 1, customTooltip: 1},
{x: 5, y: 1, customTooltip: 2},
{x: 6, y: 1, customTooltip: 3}
];
var chart = new Highcharts.Chart({
series: [
{data: seriesTotal}
],
tooltip: {
formatter: function() {
//access customTooltip option
return this.point.customTooltip;
}
},
});
尽管可能不是最佳选择,但我在类似情况下做了以下操作:
在我的配置中,我设置了工具提示格式化程序以使用点名称。
tooltip: {
formatter: function() {
return this.point.name;
}
}
然后,当我添加点时,我只需使用自定义HTML设置名称即可,如...
// get x, y and other vars
series[0].addPoint({x: x, y: y, name: 'In Service: ' + inService }, false);
series[1].addPoint({x: x, y: y, name: 'Total: ' + total }, false);
当然,您将使用未调整的总价值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.