我正在构建一张Highcharts圆环图,其中包含每个馅饼的特定数据。工具提示数据在数据的深入部分内传递,并正确显示外环。
然而,内部工具提示由主数据变量传递,并显示悬停在最后一个外环上的工具提示。
我想指定内部工具提示的数据,如下所示:
data = [{
y: 44.73,
color: '#2f7ed8',
drilldown: {
name: 'Unknown',
categories: ['Google', 'Unknown'],
data: [0.00, 44.73],
tooltip_data: ['Google tooltip', 'Unknown tooltip']
},
tooltip_inner: 'Inner Tooltip here'
} ...
我的问题是,我可以选择正在悬停的图形(内部或外部)并修改格式化程序返回的工具提示吗?如果我这样做,格式化程序将返回正确的数据:
tooltip: {
useHTML: true,
formatter: function() {
return this.point.tooltip_data;
}
}
将返回的数据切换到this.point.tooltip_inner适用于内部饼图但当然忽略外部。我需要能够切换从tooltip_data返回哪些点数据,如果是inner,则返回tooltip_inner。
每个切片的变量都在这里:http://jsfiddle.net/bQqM8/
编辑:小提琴现在包含工作示例,以防其他人需要这样做。
答案 0 :(得分:0)
问题在于您创建数据的方式,让我们考虑一下:
trafficData.push({
name: categories[i],
y: data[i].y,
tooltip_inner: data[i].tooltip_inner,
color: data[i].color,
tooltip_data: data[i].tooltip_data // here you are getting tooltip.data
});
并将其与您的数据进行比较:
data = [{
y: 33.84,
color: '#ff0000',
drilldown: {
name: 'Downloads',
categories: ['News', 'P2P'],
data: [30.36, 3.48],
color: '#ff0000',
tooltip_data: ['News drilldown data here', 'P2P drilldown data here']
},
tooltip_inner: 'Inner Download Tooltip'
},
...
{ another point } ]
我没有在点对象中看到tooltip_data,只在钻取对象中看到。添加缺少的tooltip_data以便它可以正常工作。