Относительно вопроса (1) , я полагаю, что вы не можете сделать это в datetime xAxis в HighCharts . При установке этого типа оси каркас вычисляет отметки, отображаемые на соответствующей оси, в зависимости от имеющихся у вас данных.
В ответ на вопрос (2) я считаю, что пока вы не можете пропустить время по оси дата-время. Однако, хотя я и не пробовал, вы можете посмотреть на некоторые обходные пути, используя category , чтобы вы могли использовать форматировщик и заменить ненужные галочки.
Несмотря на все вышесказанное, я сделал обходной путь, который вы, возможно, захотите использовать, и ему просто нужно немного отформатировать, чтобы он был более или менее , о чем вы просили. Вот оно:
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container'
},
xAxis: {
type: 'datetime',
labels: {
enabled: false
}
},
series: [{
dataLabels: {
enabled:true,
formatter: function(){
if(this.point === this.series.data[this.series.data.length - 1])
{
return this.x
}
if(this.point === this.series.data[0])
{
return this.x
}
}
},
data: [
[Date.UTC(2007,05,29), 300],
[Date.UTC(2007,09,23), 300],
[Date.UTC(2007,09,04), 400]
]
}]
});
По сути, я избавляюсь от меток xAxis и просто показываю дату в самой точке для значений, которые я хочу (первый и последний). Обратите внимание, что вы, возможно, захотите отформатировать отображение этой даты, поскольку сейчас отображается метка времени в мс.
Вы можете увидеть это вживую в jsFiddle: ярлыки xAxis удалены