Highcharts sunburst - переопределить глобальные цвета - PullRequest
0 голосов
/ 08 апреля 2019

Можно ли переопределить глобальные цвета диаграммы для диаграммы солнечных лучей?Я пробовал несколько подходов, но ни один из них не работает.

Пожалуйста, проверьте эту скрипку: https://jsfiddle.net/max1tdzh/

chart: {
    height: '100%',
    colors: ['#ff0000', '#00ff00', '#0000ff']
},    
plotOptions: {
    series: {
         colors: ['#ff0000', '#00ff00', '#0000ff']
     },
     sunburst: {
         colors: ['#ff0000', '#00ff00', '#0000ff']
     }
},

Я попытался установить chart.colors, plotOptions.sunburst.colors и plotOptions.series.colors, но ни один из них не работает.

Что работает, так это установка свойства цвета для определенных точек данных в массиве series.data, но это решение не подходит, так как требует циклического перебора всех элементов с использованием пользовательской вспомогательной функции, например:

let colorIndex = 0;
return data.map((point) => {
    if (!point.parent) {
        const color = colors[colorIndex % colors.length];
        colorIndex++;
        return { ...point, color };
    }
    return point;
});

1 Ответ

2 голосов
/ 08 апреля 2019

Вам необходимо установить цвета непосредственно в объекте конфигурации диаграммы:

Highcharts.chart('container', {
    colors: ['#ff0000', '#00ff00', '#0000ff'],
    chart: {
        height: '100%',
    },
    ...,
    plotOptions: {...}
});

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

Справочник по API: https://api.highcharts.com/highcharts/colors

...