2016-04-13 6 views
1

Я пытаюсь установить максимальное значение динамически наибольшего числа. Я не уверен, где я делаю неправильно ...Highcharts - yAxis tickInterval до максимальных данных

Любая помощь пожалуйста?

Online Demo

Ожидаемое:

enter image description here

Что я получаю:

enter image description here

PS: Я хочу найти максимальное значение (например, 100 в этом примере) и покажем, что в качестве значения первого yAxisLabel и следующая должна быть минус (-) 20 и т.д ...

Диаграмма 1 значения [39, 35, 19, 38, 39, 48, 56, 57]

Диаграмма 2 значения [39, 35, 19, 38, 39, 48, 56, 57]

Пробовал варианты без везения:

yAxis: { 
    min: 0, 
    max: 100, 
    tickInterval: 20, 
}, 

и

yAxis: { 
    tickInterval: 20, 
    tickPositioner: function(min,max){ 
     var act = min, 
      ticks = []; 
     console.log(this); 
     while(act <= max){ 
     ticks.push(act); 
     act+= this.tickInterval; 
     } 
     return ticks; 
    }, 
    min: 0, 
    max: 100, 
}, 

Благодаря @Kacper Мадей который приводимого ниже код, который привел enter image description here

ответ

2

Это можно использовать tockPositioner и набор клещей там вроде:

showLastLabel: false, 
    tickPositioner: function(min, max) { 
     var ticks = [], 
     tick = min, 
     step = Math.round((max - min)/7); 

     while (tick < max - step/2) { 
     ticks.push(Math.round(tick)); 
     tick += step; 
     } 
     ticks.push(Math.round(max)); 
     ticks.push(Math.round(max+step)); //hidden - added for top padding 

     return ticks; 
    } 

Пример: http://jsfiddle.net/e6har510/

+0

** @ Kacper Madej ** ... Спасибо за ответ. Но это не решило мою проблему :(Мои все значения - '[59, 56, 50, 52, 61, 80, 79, 100]' и '[39, 35, 19, 38, 39, 48, 56, 57 ] ', которые ** ниже 100 **, но я получаю максимальное значение как ** 157 ** в yAxis ... Я хочу определить максимальное значение диаграмм и установить его как maxLabel – Reddy

+1

@Reddy Sine есть набор стеков , тогда максимальное значение равно 100 + 57, поэтому 157. Отключить укладку, чтобы получить максимум 100 - http://jsfiddle.net/e6har510/1/ –

+0

** @ Kacper Madej **. Именно это я и ищу. .. Спасибо за совет – Reddy

Смежные вопросы