Функция форматирования не работает в Highstocks - PullRequest
2 голосов
/ 12 марта 2020

Я пытаюсь добавить пользовательские значения оси X в Highstocks, но я не знаю, почему значения оси X отражают в Highcharts. Вот код, который я пробовал.

HTML:

 <div id="check">
 </div>

JS:

    Highcharts.stockChart('check', {  

        rangeSelector: {
                enabled: false
            },

    xAxis: {
        categories: ["a", "b", "c"],

        labels: {
            formatter: function () {
                console.log(this.value);
                return  this.value;

            }
        }
    },

    plotOptions: {
        series: {
            animation: {
                duration: 2000
            },
            marker:{
              enabled: false
            }
        }
    },

    xAxis:{
      animation:{
        enabled:true
       },
    },

    series: [{
        data: [5,3,4]
    }]
});

Вот Скрипка: http://jsfiddle.net/abnitchauhan/j2Ls0gr3/

В скрипте вы можете видеть, что вместо значений категорий a, b, c отображается значение метки времени.

Я просто хочу отобразить значения категории. Я не знаю, почему не работает функция Formatter.

1 Ответ

1 голос
/ 12 марта 2020

Обратите внимание, что xAxis.categories и xAxis.type (для установки другого типа) в документации Highstock не существует.

API: https://api.highcharts.com/highstock/xAxis

Однако вы можете использовать обратный вызов label.formatter , чтобы найти положение тиков в глобально определенном массиве и вернуть его.

Демо: http://jsfiddle.net/BlackLabel/ak850jLu/

var xAxisCategories = ['a', 'b', 'c']

Highcharts.stockChart('check', {

  xAxis: {
    labels: {
      formatter: function() {

        return xAxisCategories[this.value];
      }
    }
  },

  series: [{
    data: [5, 3, 4]
  }]
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...