Подтвердить что ты не робот

Highcharts datetime x-axis пользовательское форматирование

Я хотел бы иметь только первую букву каждого буднего дня как ось x, т.е. повторить M T W T F S S. В настоящее время вы можете установить dateTimeLabelFormats, который я установил для использования %a, который является dateFormat для короткого рабочего дня (понедельник, вторник и т.д.). Как я могу просто использовать первую букву?

Здесь мой код (я использую Lazy Highcharts в рельсах)

 f.xAxis({type: 'datetime', tickInterval: 24*3600*1000, dateTimeLabelFormats: {
        day: '%a',
        week: '%a'}
        })

Спасибо.

4b9b3361

Ответ 1

В ярлыке → formatter для xAxis используйте функцию dateFormat для получения месяца, а затем используйте функцию подстроки, чтобы получить первую букву и вернуть эту букву следующим образом:

xAxis: {        
    type: 'datetime',
    labels: {
        formatter: function() {
            var monthStr = Highcharts.dateFormat('%b', this.value);
            var firstLetter = monthStr.substring(0, 1);
            return firstLetter;
        }
    }
},

Посмотрите на jsfiddle