从HTML表格生成的高图:无法动态添加第二个yAxis

时间:2019-02-05 09:59:30

标签: highcharts datatables

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

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

根据最后一个值列,我只能得到一个yAxis。这可能是预期的。

问题:我希望三个值列中的每一个都有一个单独的yAxis,表列标题名称为yAxis标签/名称。请查看下面的屏幕截图。

Datatable and Highcharts

在上面的屏幕截图中,您可以看到三个系​​列的范围不同,并且值最低的系列(“ Value1”)基本上显示为平坦。

使用Highcharts.Chart.addAxis()函数有些起作用-我得到了新的yAxis标签,但是没有从对应的值列中使用网格线进行映射。 挑战在于,所有内容都将动态加载。事先我不知道我将获得多少列,相应地,我也不知道我必须显示多少个yAxis。

我看到的所有示例都使用yAxis硬编码信息,并且没有帮助。我没有足够的堆栈溢出答案了,到目前为止,不幸的是我还没有找到解决这个特定问题的任何方法。

1 个答案:

答案 0 :(得分: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

相关问题