Highchart - линия или область, не начинающаяся в левой точке - PullRequest
3 голосов
/ 29 марта 2012

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

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

http://jsfiddle.net/QmwaW/

спасибо

Ответы [ 2 ]

4 голосов
/ 28 августа 2014

Взгляните на Как получить High-Charts X-Axis Categories, начиная с крайней левой точки .

В двух словах - когда вы устанавливаете 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/

0 голосов
/ 29 марта 2012

Вам нужно изменить опцию tickmarkPlacement на 'on'.

 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'
    }],
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...