如何强制从 min/max 开始并防止自动舍入
How to force start on min/max and prevent automatic rounding
我试图强制图形以我的 minY/maxY 值开始,但它一直在舍入刻度值。
我当前的代码如下所示:
yAxis: [
{
tickAmount: 3,
min: minYAxis,
max: maxYAxis,
endOnTick: false,
gridLineWidth: 0,
title: {
text: ...,
},
alignTicks: false,
}
],
图片上的最小值和最大值应为最大值:1630 最小值:1400。
在当前实施中,一些系列值也高于最大刻度值。
默认情况下,Highcharts 强制在轮值上打勾。如果您将 yAxis.min
或 yAxis.max
设置为某个值,该值不能被 round tickInterval 整除(例如 2、5、10、20、25、50、100),该值将四舍五入为.
有一些方法可以用另一种方式设置刻度。
最强制的是设置严格说明的 tickPositions
数组,给定轴上的刻度应该是什么,或者使用 tickFormatter
函数,returns tickPositions 数组。
示例代码:
let data = [1500, 1400, 1550, 1630, 1600],
min = Math.min(...data),
mid = (Math.max(...data) - Math.min(...data)) / 2 + Math.min(...data),
max = Math.max(...data);
Highcharts.chart('container', {
yAxis: [{
tickPositions: [min, mid, max]
}],
series: [{
data: data
}]
});
演示:
https://jsfiddle.net/BlackLabel/07kzt12x/
API 参考文献:
https://api.highcharts.com/highcharts/yAxis.tickPositions
https://api.highcharts.com/highcharts/yAxis.tickPositioner
我试图强制图形以我的 minY/maxY 值开始,但它一直在舍入刻度值。
我当前的代码如下所示:
yAxis: [
{
tickAmount: 3,
min: minYAxis,
max: maxYAxis,
endOnTick: false,
gridLineWidth: 0,
title: {
text: ...,
},
alignTicks: false,
}
],
图片上的最小值和最大值应为最大值:1630 最小值:1400。 在当前实施中,一些系列值也高于最大刻度值。
默认情况下,Highcharts 强制在轮值上打勾。如果您将 yAxis.min
或 yAxis.max
设置为某个值,该值不能被 round tickInterval 整除(例如 2、5、10、20、25、50、100),该值将四舍五入为.
有一些方法可以用另一种方式设置刻度。
最强制的是设置严格说明的 tickPositions
数组,给定轴上的刻度应该是什么,或者使用 tickFormatter
函数,returns tickPositions 数组。
示例代码:
let data = [1500, 1400, 1550, 1630, 1600],
min = Math.min(...data),
mid = (Math.max(...data) - Math.min(...data)) / 2 + Math.min(...data),
max = Math.max(...data);
Highcharts.chart('container', {
yAxis: [{
tickPositions: [min, mid, max]
}],
series: [{
data: data
}]
});
演示:
https://jsfiddle.net/BlackLabel/07kzt12x/
API 参考文献:
https://api.highcharts.com/highcharts/yAxis.tickPositions https://api.highcharts.com/highcharts/yAxis.tickPositioner