1

所以我试图用我的自定义饼图来实现径向渐变。我使用自己的颜色而不是默认颜色。

我试图实现这个线程中看到的自定义颜色:

HighCharts:如何将自定义颜色与渐变相结合

但我认为对于我的数据对象,我需要以不同的方式实现它们。

我的图表示例位于此处:http: //jsfiddle.net/PcX4b/2/

这是我在调用图表之前的代码:

    data = [
    {
        color: "#61A6EC",
        name: "Equities",
        y: 40.07
    },{
        color: "#CC2A2A",
        name: "Cash",
        y: 30
    },{
        color: "#FFC448",
        name: "Options",
        y: 11.55
    },{
        color: "#ADD54D",
        name: "Fixed Income",
        y: 0.18
    },{
        color: "#FD8645",
        name: "Other",
        y: 0.00001
    }
];

var colors =[];     
var innerData = [];
var outerData = [];
for (var i = 0; i < data.length; i++) {
    var brightness = 0.1;
    // inner circle
    innerData.push({
        name: data[i].name,
        y: data[i].y,
        color: data[i].color
    });
    // outer circle
    outerData.push({
        name: data[i].name,
        y: data[i].y,
        color: 'rgba(255,255,255,0.5)'
    });
    colors.push(data[i].color);
}
    colors: Highcharts.map(colors, function(color) {
return {
    radialGradient: { cx: 0.5, cy: 0.3, r: 0.7 },
    stops: [
            [0, color],
            [1, Highcharts.Color(color).brighten(-0.3).get('rgb')] // darken
    ]
};

})

在那里你可以看到图表正在渲染,但我没有看到任何渐变。不知道我做错了什么,我没有收到任何错误,所以我对为什么这不起作用感到困惑。

4

2 回答 2

0

尝试使用包含属性radialGradient和停止的对象手动设置属性“颜色”

color:{radialGradient:...,stops:...}

是的,它应该工作。一分钟前检查过

于 2014-02-18T18:20:19.707 回答
0

您需要使用 Highcharts.getOptions().colors并添加新的颜色 sby map() 函数,请看下面的示例:

http://jsfiddle.net/CkKDy/1/

于 2013-06-10T12:32:44.900 回答