Javascript Highcharts(HighStock)不显示附加在其上的工具提示';s对应的x轴
我的应用程序中有一个高库存图表。此图表有3个y轴和2个x轴。我在底部显示一个x轴,在顶部显示另一个x轴。并按“高度”属性拆分三个Y轴。 我把yAxis[0]和xAxis[0]连接起来,把另外两个y轴和第二个x轴连接起来 这是y轴:Javascript Highcharts(HighStock)不显示附加在其上的工具提示';s对应的x轴,javascript,charts,highcharts,tooltip,x-axis,Javascript,Charts,Highcharts,Tooltip,X Axis,我的应用程序中有一个高库存图表。此图表有3个y轴和2个x轴。我在底部显示一个x轴,在顶部显示另一个x轴。并按“高度”属性拆分三个Y轴。 我把yAxis[0]和xAxis[0]连接起来,把另外两个y轴和第二个x轴连接起来 这是y轴: this.stockChartOptions.yAxis = [ { opposite:false, height : '32%', title : { text :'pe' }, }, { opposite: false,
this.stockChartOptions.yAxis = [
{
opposite:false,
height : '32%',
title : { text :'pe' },
},
{
opposite: false,
height : '32%',
top: '34%',
title : { text : 'pe forwards' },
offset :0
},
{
opposite:false,
height : '32%',
top : '68%',
title : { text : 'pe analytical' },
offset :0
}
]
这是x轴:
this.stockChartOptions.xAxis = [
{
categories : [],
type : 'datetime',
opposite:true,
labels : {
rotation : -45,
formatter: function() {
return new Date(this.value).toLocaleDateString('en-US');
}
},
},
{
categories : [],
type : 'datetime',
labels : {
rotation : -45,
formatter: function() {
return new Date(this.value).toLocaleDateString('en-US');
}
},
}
]
问题是:当我为工具提示编写格式化程序方法时,第二个x轴的工具提示标签未附着在其对应的x轴上。
有什么问题?如何解决这个问题?
以下是格式化程序方法:
this.stockChartOptions.tooltip = {
formatter: function () {
const xAxisBox = new Date(this.x).toLocaleDateString('en-US');
return ['<b>' + xAxisBox + '</b>'].concat(
this.points ?
this.points.map(item => {
return ` ${item.series.name} : ${item.y}`;
}): ['']
);
},
}
this.stockChartOptions.tooltip={
格式化程序:函数(){
const xAxisBox=新日期(this.x).toLocaleDateString('en-US');
返回[''+xAxisBox+'').concat(
这是多少分?
this.points.map(项=>{
返回`${item.series.name}:${item.y}`;
}): ['']
);
},
}
下面是问题的图像:
EDIT:下面是一个JSFIDLE链接,它准确地显示了问题所在:
您能用示例数据在某个在线编辑器上重现这个问题吗?感谢您的回复,下面是一个JSFIDLE链接,它准确地显示了问题所在。考虑到我创建了两个XAXIS,但两个XAXIS工具提示标签都在顶部显示。也许你应该考虑把第二个XXIS设置成相反的?对于此配置,工具提示标题将附加到底部轴:谢谢,我测试了该配置,但它不是它想要的。我想把工具提示附加到它对应的x轴上。您仍然需要将两个工具提示都附加到底部。为什么我们不能这样做?是虫子还是我遗漏了什么?当然,这不是一个正常的行为。它不是这样工作的-没有相应的X轴-默认情况下,工具提示标题附加到第一个X轴。