Highcharts-仅绘制系列的网格线
我有一个只有一个系列的面积样条曲线。该设计要求绘制与系列相接触的x轴网格线,且不会超出该范围。有可能这样做吗?下面是我配置网格线的代码:Highcharts-仅绘制系列的网格线,highcharts,Highcharts,我有一个只有一个系列的面积样条曲线。该设计要求绘制与系列相接触的x轴网格线,且不会超出该范围。有可能这样做吗?下面是我配置网格线的代码: xAxis: { gridLineWidth: 1, tickAmount: 30, lineWidth: 0, labels: { enabled: false }, minPadding: 0 }, 另一个选项(jlbriggs在对该问题的评论中提到的2除外)可能是在包装器中更改网格线的路径,
xAxis: {
gridLineWidth: 1,
tickAmount: 30,
lineWidth: 0,
labels: {
enabled: false
},
minPadding: 0
},
另一个选项(jlbriggs在对该问题的评论中提到的2除外)可能是在包装器中更改网格线的路径,如:
(function(H) {
var UNDEFINED;
H.wrap(H.Tick.prototype, 'render', function(p) {
p.apply(this, [].slice.call(arguments, 1)); //run original function
if (this.axis.isXAxis && this.gridLine) {
var point = this.axis.series[0].options.data[this.pos],
d = this.gridLine.attr('d').split(' ');
if (point !== UNDEFINED) {
d[2] = this.axis.chart.yAxis[0].toPixels(point);
d = d.join(' ');
} else {
d = ''; //remove if not crossing any point
}
this.gridLine.attr({
d: d
});
}
});
})(Highcharts)
例如:
如果网格线未穿过任何点,则网格线将被删除,但如果愿意,您可以更改代码的该部分。此选项不受支持。但这个问题已经被问了很多-在这里搜索一下,你很可能会找到一些潜在的解决方案。你的选择基本上是1)找到一种方法来隐藏序列上方的网格线-即,添加一个带有白色填充的堆叠区域序列,或者2)找到一种方法来绘制从轴到系列点的自己的直线。无论是通过直线/散点系列,还是通过chart.renderer()函数,都非常有创意!谢谢你的总结,太棒了!谢谢,@Kacper-Madej。