如何更改highcharts饼图的颜色?

Sre*_*kat 46 javascript highcharts highstock

我正在使用highcharts制作饼图,但我在为图表加载自定义颜色集时遇到问题.

这是我的代码:

     <script type="text/javascript">
     $(function () {
     Highcharts.setOptions({
     colors: ['#50B432', '#ED561B', '#DDDF00', '#24CBE5', '#64E572', '#FF9655', '#FFF263',      '#6AF9C4']
    });
    return new Highcharts.Chart({


        chart: {
            renderTo: 'trailpiechart',
            plotBackgroundColor: null,
            plotBorderWidth: null,
            plotShadow: false,
            backgroundColor: "#f8f8f8",
            margin: [20, 20, 20, 20]
        },


        credits: {
            enabled: false
        },

        title: {
            text: caption
        },
        tooltip: {
            formatter: function () {
                return this.y + ' links';
            }
        },
        plotOptions: {
            pie: {
                allowPointSelect: true,
                cursor: 'pointer',
                dataLabels: {
                    enabled: false
                },
                showInLegend: true
            }
        },
        legend: {
            layout: 'vertical',
            floating: false,
            borderRadius: 0,
            borderWidth: 0
        },
        series: [{
            type: 'pie',
            name: 'Browser share',
            data: data
        }]
    });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

我的饼图使用此代码,但它只使用默认颜色托盘.

如何指定自定义颜色集?

Ric*_*ann 79

Highcharts.setOptions({
 colors: ['#50B432', '#ED561B', '#DDDF00', '#24CBE5', '#64E572', '#FF9655', '#FFF263', '#6AF9C4']
});
Run Code Online (Sandbox Code Playgroud)

看下面的例子 http://jsfiddle.net/8QufV/

  • 我已经尝试过这个,但是我的图例颜色正在改变,但饼图颜色没有改变。 (2认同)

Ali*_*ani 8

对于那些喜欢初始化配置中颜色的人,你可以简单地将颜色放在配置对象的plotOptions部分中,如下所示:

...,
plotOptions: {
  pie: {
   colors: [
     '#50B432', 
     '#ED561B', 
     '#DDDF00', 
     '#24CBE5', 
     '#64E572', 
     '#FF9655', 
     '#FFF263', 
     '#6AF9C4'
   ],
   allowPointSelect: true,
   cursor: 'pointer',
   dataLabels: {
     enabled: false
   },
   showInLegend: true
 }
},
...
Run Code Online (Sandbox Code Playgroud)


Lin*_*ger 7

我认为您需要做的是使用theme而不是setOptions设置颜色,如下所示:

Highcharts.theme = {colors: ['#50B432', '#ED561B', '#DDDF00', '#24CBE5', 
                             '#64E572', '#FF9655', '#FFF263', '#6AF9C4']});
Run Code Online (Sandbox Code Playgroud)

  • 如果您转到[饼图演示](http://www.highcharts.com/demo/pie-basic/grid),然后单击"查看视觉主题",您将看到如何操纵整个主题. (2认同)