在Highcharts的堆叠栏中为每个堆叠赋予不同的颜色

时间:2018-07-12 06:30:37

标签: javascript highcharts

正如问题所述,我想为堆叠条形图中的每个堆叠赋予不同的颜色。

我尝试过:

  • colorByPoint=true选项中设置pie,从而为每个条形设置不同的颜色。

  • color中的每个JSON设置series,这无法正常工作。

但是,如图所示,我希望每个堆栈具有不同的颜色。  here

2 个答案:

答案 0 :(得分:1)

您可以为整个系列点或仅为一个点设置颜色。没有其他方法,因此,要获得在图像上显示的效果,您需要在系列内部的每个点上设置不同的颜色,然后在下一个系列定义中使该颜色更亮。 / p>

Highcharts.chart('container', {
    chart: {
        type: 'column'
    },
    title: {
        text: 'Stacked column chart'
    },
    xAxis: {
        categories: ['Apples', 'Oranges', 'Pears']
    },
    plotOptions: {
        series: {
        stacking: 'normal'
      }
    },
    legend: false,
    series: [{
        name: 'Jane',
        data: [{
            y: 2,
          color: '#ff0000' // red
        }, {
            y: 3,
          color: '#00ff00' // green
        }, {
            y: 1,
          color: '#0000ff' // blue
        }]
    }, {
        name: 'Joe',
        data: [{
            y: 1,
          color: '#990000' // medium red
        }, {
            y: 2,
          color: '#009900' // medium green
        }, {
            y: 3,
          color: '#000099' // medium blue
        }]
    }, {
        name: 'John',
        data: [{
            y: 3,
          color: '#550000' // dark red
        }, {
            y: 1,
          color: '#005500' // dark green
        }, {
            y: 2,
          color: '#000055' // dark blue
        }]
    }]
});

实时示例:https://jsfiddle.net/vyamk5cg/

答案 1 :(得分:0)

使用color属性进行设置。

series: [{
    name: 'Top',
    data: [
        {y:15, color:'blue'}, 
        {y:64, color:'red'}, 
        {y:27,  color:'green'}, 
        {y:32, color:'yellow'}, 
        {y:17, color:'purple'}
    ]
}.............

希望这会有所帮助!