2012-03-29 2 views
2

Привет, я делаю график с использованием Highchart. он отлично работает. Я получил этот вопрос:Highchart - строка или область, не начинающаяся с левой стороны

Я дал категории как месяцы. в то время как начало линии (строка/область) - это начальный центр месяца, а не слева от точки месяца, поэтому в октябрьский месяц линия начинается в центре, а в прошлом месяце заканчивается с центральной точкой, а не заканчивается конец графика. но мой клиент хочет, чтобы он начинался и заканчивался соответствующими месяцами. я добавив jsfiddle для справки:

http://jsfiddle.net/QmwaW/

благодарит

ответ

-2

Вам нужно изменить параметр tickmarkPlacement к 'на'.

xAxis:[{ 
     categories:categories, 
     title:{text:null}, 
     gridLineWidth: 1, 
     verticalAlign:'top', 
     lineWidth:0, 
     offset:-400, 
     minPadding:0, 
     maxPadding:0, 
     margin:[0,0,0,0], 
     tickmarkPlacement:'on' 
    }], 
+1

Нет, это не спросил я. в случае, если вы возьмете категорию, i метка изменит ее значение между столбцом, но я хочу изменить значение по столбцу. – 3gwebtrain

2

Посмотрите на How to get Highcharts X-Axis Categories starting at the left most point.

В нескольких словах - при установке xAxis.Categories xAxis становится «строкой» вместо «числовой». Поэтому все настройки тиков (startOnTick, endOnTick ...) не работают с ним. Хороший фокус в том, чтобы переопределить xAxis.labels форматировщик:

var xCategories = ['1990','1991','1992','1993','1994','1995','1996','1997','1998']; 

    var chart = new Highcharts.Chart({ 
     chart: { 
      renderTo: 'container', 
     }, 
     xAxis: { 
      labels: { 
       formatter: function() { 
        return xCategories[this.value]; 
       } 
      }, 

      startOnTick: false, 
      endOnTick: false, 
      minPadding: 0, 
      maxPadding: 0, 

      gridLineWidth: 1 
     }, 
     series: [{ 
      data: [2000,9001,1337,100,1000,4444,8888,1844,6780] 
     }] 
    }); 

Смотрите пример: http://jsfiddle.net/vnJLG/

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