Изменить метку оси X при детализации с использованием HighCharts - PullRequest
0 голосов
/ 18 января 2020

Я хочу изменить метку оси х. Ниже приведен мой код



var msMap = new Object();
msMap[7] = "Cross Border Error";
msMap[8] = "Domestic Error";
msMap[13] = "Delivery Error";
msMap[18] = "Personal Error";
msMap[6] = "Executive Error";
msMap[35] = "Legal Error";
Highcharts.chart('container', {
    chart: {
        type: 'column',
       events: {
        drilldown: function(e) {
            this.xAxis[0].setTitle({ text: 'ErrorID' });
        },
        drillup: function(e) {
            this.xAxis[0].setTitle({ text: 'Mean Absolute Error (in days)' });
        }
    }
    }, plotOptions: {
            series: {
                borderWidth: 0,
                dataLabels: {
                    enabled: true
                }
            }
        },

    title: {
        text: 'Browser market shares. January, 2018'
    },
    subtitle: {
        text: 'Click the columns to view versions. Source: <a href="http://statcounter.com" target="_blank">statcounter.com</a>'
    },
    xAxis: {
    title: {
                        text: 'Mean Absolute Error (in days)'
                    },
        type: 'category',
             crosshair: true
    },
    yAxis: {
        title: {
            text: 'Total percent market share'
        }

    },


    tooltip: {
        shared:true,
        headerFormat: '<span style="font-size:11px">{series.name}</span><br>',
        pointFormat: '<span style="color:{point.color}">{point.name}</span>: <b>{point.y:.2f}%</b> of total<br/>'
    },

    series: [
        {
            name: "Browsers",
            data: [
                {
                    name: "4",
                    y: 15,
                    drilldown: "4"
                },
                {
                    name: "5",
                    y: 10,
                    drilldown: "5"
                }
            ]
        }
    ],
    drilldown: {
        series:[

        { 
        name:"4",
        id:"4",
        pointWidth: 30,
        data:[
             [
                18,
                5
             ],
             [
                7,
                8
              ],
              [ 13,
                2
                ] ,
                [8,5]
                ]

        },

        {name:"5",
        id:"5",
        pointWidth: 20,
        data:[
        [6,5],
        [35,5]
        ]
        }

        ]

    }
});

Вкл. Развернуть вместо значения по оси X 7,8 и c. Я хочу отобразить их строковые значения, указанные на карте. Я не могу найти ссылку, с которой я могу добиться этого.

Вот моя ссылка jsfiddle https://jsfiddle.net/ebkwnsz2/

Так что, когда я выполняю детализацию, скажем, столбец со значением как 4, развертка показывает 4 бара со значениями 7 8,13,18. Вместо отображения значений я хочу показать их отображение, как указано в msMap

1 Ответ

1 голос
/ 20 января 2020

Я думаю, что вставка правильной ссылки на объект в качестве значения x для заданной c точки детализации - это решение, которое вы ищете.

Демонстрация: https://jsfiddle.net/BlackLabel/5m8a3s2j/

 {
  name: "4",
  id: "4",
  pointWidth: 30,
  data: [
    [
      msMap[18],
      5
    ],
    [
      msMap[7],
      8
    ],
    [msMap[13],
      2
    ],
    [msMap[8], 5]
  ]

},

Это то, что вы имели в виду?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...