使用colorValue的Highcharts饼图切片颜色强度

时间:2015-04-19 09:44:19

标签: javascript jquery charts highcharts

我正在努力实现与此处所见相同的事情:

http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/treemap-coloraxis

除了饼图外。

我设置如下:

 $('#expenditurePie').highcharts({
            chart: {
                plotBackgroundColor: null,
                plotBorderWidth: null,
                plotShadow: false,
                backgroundColor: '#121212',
                height: 322,
                className: 'summary-chart-right'
            },
            title: null,
            tooltip: {
                pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
            },
            plotOptions: {
                pie: {
                    allowPointSelect: true,
                    borderColor: '#000',
                    cursor: 'pointer',
                    dataLabels: false
                }
            },
            colorAxis: {
                minColor: '#FFFFFF',
                maxColor: '#FF0000'
            },
            series: response
        });

回复数据样本:

...
{name: "Leisure", y: 143.55, colorValue: 3}
...

它不起作用,饼图颜色是默认颜色。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

根据the docs,colorValue仅适用于TreeMaps。

然而,你可以毫不费力地做同样的事情。而不是colorValue,使用color,然后调用函数来获取值。这是一个快速而肮脏的例子,可以根据您想要的行为以各种方式进行改进:

var getColor = function (step,stepCount) {
    var scaledHex = Math.floor(255*step/(stepCount+1)).toString(16);
    console.log(scaledHex);
    return '#FF'+scaledHex+scaledHex;
};

...
{name: "Leisure", y: 143.55, color: getColor(1,3)}
...

http://jsfiddle.net/8Lnzcnx6/