Highcharts将网格线绘制到yAxis区域

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

在Highcharts中,有可能将y轴标签移动到绘图区域中

yAxis: {
    labels: {
        align: 'left',
        x: 0,
        y: -2
    }
}

使用此设置,标签由线条,数据标签等覆盖。

是否可以在yAxis-Label-Area上绘制水平网格线而不使xAxis和系列从那里开始。希望的行为用下图中的黑线表示。

enter image description here

highcharts
1个回答
0
投票

最简单的解决方案是调整xAxis,例如:

xAxis: {
    min: -0.5
}

现场演示:http://jsfiddle.net/BlackLabel/qnayxb04/

API:https://api.highcharts.com/highcharts/xAxis.min

如果您想要更多地控制线条,可以使用setAttribute编辑path元素:

chart: {
    events: {
        load: function() {
            var gridLines = this.yAxis[0].gridGroup.element.children,
                i,
                path;

            for (i = 0; i < gridLines.length; i++) {
                path = gridLines[i].attributes.d.nodeValue;
                path = 'M 40' + path.substr(4);

                gridLines[i].setAttribute('d', path)
            }
        }
    }
}

现场演示:http://jsfiddle.net/BlackLabel/61h5qtn9/1/

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