从HTML表中生成Highcharts:不能动态地添加第二个Y轴

问题描述 投票:0回答:1

我有一个可变柱HTML表(在这个例子中一个日期栏,和三个值列)。从这个生成Highchart是通过使用数据表作为图表输入数据简单:

this.chart = Highcharts.chart(this.container.nativeElement, {
     data: {table: 'datatable'},
    ...
}

在这里我只得到一个Y轴的基础上,最后一个值列。这可能是因为预期。

问题:我想有是一个单独的Y轴为三个值的列,与表列标题名称为y轴的标签/名称。请看下面的截图。

Datatable and Highcharts

在上面的截图可以看到,三个系列具有不同的范围,并且具有最低的值(“值1”)的一个基本上显示为是平坦的。

使用Highcharts.Chart.addAxis()功能的工作原理有点 - 我得到了新的Y轴的标签,但没有从与网格线对应的值列映射。我们面临的挑战是,一切都是动态加载。在此之前,我不知道有多少列将获得,并相应地,我不知道有多少y轴有显示。

我见过的所有使用硬编码的例子y轴的信息,并没有帮助。我跑出来的可能的堆栈溢出的答案,到目前为止,我很遗憾没有发现任何解决这一具体问题。

highcharts datatables
1个回答
1
投票

除了增加一个轴,还必须将其连接到相应的系列:

chart.addAxis({
    opposite: true
});

chart.series[1].update({
    yAxis: 1
});

现场演示:https://jsfiddle.net/BlackLabel/1bkvcwmp/

API参考:https://api.highcharts.com/class-reference/Highcharts.Series#update

© www.soinside.com 2019 - 2024. All rights reserved.