Это происходит потому, что у вас time.useUTC = true
(опция по умолчанию).Измените его на false, и он должен работать как положено.
Код:
var data = [
['4 / 23 / 2017', 1], // [date, value]
['4 / 30 / 2017', 2],
['5 / 7 / 2017', 4],
['5 / 14 / 2017', 2],
['05 / 21 / 2017', 3],
['06 / 04 / 2017', 5]
];
Highcharts.chart('container', {
xAxis: {
tickAmount: 5,
type: 'datetime',
dateTimeLabelFormats: {
day: '%m/%d/%Y',
week: '%m/%d/%Y',
month: '%m/%d/%Y',
},
labels: {
style: {
fontFamily: "Open Sans"
},
}
},
time: {
useUTC: false
},
series: [{
data: data.map(elem => {
elem[0] = new Date(elem[0]).getTime();
return elem;
})
}]
});
API:
Демонстрация: