我用 highcharts 创建了一个朝阳图。我在python中设置了给config
的{{1}}对象。我想为朝阳图表的每个级别提供一个不同的工具提示。
我可以做一个很大的js函数,在我的数据中搜索该点的级别,然后将该级别提供给工具提示格式化程序以显示特定的数据,但是我认为这不合适。
是否有任何Highcharts.chart('type', config)
函数来获取点的水平或在highcharts
中定义工具提示?
答案 0 :(得分:1)
您可以基于切片的level
属性获得此属性。您可以执行以下操作:
tooltip: {
formatter: function () {
console.log(this); // see what each slice's properties are
if (this.point.node.level == 4) {
return 'Population of <b>' + this.point.options.name +
'</b> is <b>' + this.point.options.value + '</b>';
} else {
return 'Level <b>' + this.point.node.level + '</b> has no tooltip';
}
}
}
示例jsFiddle
答案 1 :(得分:0)
向您询问您的答案是否正确。实际上,console.log(this)
对我有帮助!我不知道为什么,但是this
直接指向我的代码中的要点。而且由于我使用python编写代码,因此我必须将js函数格式化为python字符串,这非常困难。
所以我以类似这样的结尾:
config['tooltip']['pointFormatter'] = (
"function(){"
"var level = this.node.level;"
"return"
f" {myValues}[level] + '<span style=\"text-transform: uppercase;font-weight:bold\">{myPythonVar}:</span> '"
f"+ {myJsFormatter}.call(this) + '<br>'"
"}"
)
它将python和js混合在一起,很难阅读,但就我而言是必需的。