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

Highcharts, Показать определенный тик на тип xaxis datetime

У меня есть xaxis, который находится в формате datetime на высоких диаграммах.

Я посылаю миллисекунду позиции xaxis, чтобы поместить точку на диаграмму.

Общее время на xaxis составляет около 2 лет.

Но я хочу показывать тик только там, где есть несколько точек (около 6 баллов).

На данный момент тики показываются с регулярным интервалом с датой.

Вот что у меня есть:

enter image description here

И что мне нужно:

enter image description here

спасибо,

4b9b3361

Ответ 1

Это возможно,

вы можете использовать

xAxis.labels.formatter 

это для форматирования меток, вы должны поддерживать {realaxis: {label: labelValue}, realaxis: {label: labelValue}...} Объект для форматирования меток

установите

xAxis.tickInterval

для количества вызовов для функции форматирования меток, которые вы предоставили

Ответ 2

Я думаю, вы не можете этого сделать. Highcharts только рисует тики через некоторый регулярный интервал. Если они не появляются в регулярном интервале, то они больше не являются тиками. Вы можете попробовать установить minorTickInterval, но все равно все зависит от ваших данных, где они отображаются на временной шкале.

Ответ 3

Если вы хотите показывать тики по мере необходимости, то вы можете реализовать пользовательский форматтер. В принципе, вы бы построили только точку, если значение было таким же, как и в ваших данных:

var data = []; //assuming this is your array of timestamps

var chart = new Highcharts.chart({
    //other options
    xAxis: {
        labels: {
            formatter: function () {
                //some cleanup may be required, but this is the general form of the solution
                if (this.value in data) {
                    return this.value;
                }
            }
        }
    }
});