我有折线图。数据始终索引为100.我希望yAxis始终从100开始。我将yAxis设置为......
yAxis: {min: 0, tickinterval: 100}
将我的yAxis设置为{0,100,200,---}。它确实适用于我的大多数数据,但是当数字很大时,tickinterval会发生变化。它来自{0,5k,10k ......}。我该如何设置我的间隔,以便在yAxis中始终可以看到100?
答案 0 :(得分:1)
对于yAxis,将min设置为100并将startOnTick设置为false将用于显示100的轴。为确保100的刻度可见,您可以使用tickPositioner并重新定义位置以进行刻度。
$(function () {
$('#container').highcharts({
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
yAxis: {
min: 100,
startOnTick: false,
tickPositioner: function() {
var oldPos = this.tickPositions,
len = oldPos.length,
pos = [100],
i;
for(i = 0; i<len; i++) {
if(oldPos[i] > 100) {
pos.push(oldPos[i]);
}
}
return pos;
}
},
series: [{
data: [200,400,300, 2000,2500,5000,60000,7e7]
}]
});
});
答案 1 :(得分:0)
我会使用第二个轴并使用tickPositions
属性执行此操作。
此处示例:
数字越大,100就会出现在刻度之间。 当刻度间隔为100时,第2轴的100将出现在主轴标签的前面,不会引起注意。
或者,您也可以将第二个y轴设置为相反,并始终在右侧显示:
你也可以忘记第二个y轴,并使用带有标签的情节线:
如果这些示例都不适合您,您还可以查看tickPositioner
函数,看看是否可以解决这个问题:
答案 2 :(得分:-1)
yAxis: {
min: 100,
},