【问题标题】:HighCharts: How to combine custom colors with gradientHighCharts:如何将自定义颜色与渐变相结合
【发布时间】:2013-01-28 20:57:20
【问题描述】:

现在我正在玩饼图的着色......我得到了没有渐变的自定义颜色,或者有渐变的默认颜色......我的颜色存储在 php 字段中,我想像这样加载colors: <?echo $myColors;?> 。 我的代码的实际状态是这样的(它显示带有渐变的默认颜色):

colors: Highcharts.map(Highcharts.getOptions().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
        ]
    };
})

我应该如何编辑它以便它以简单的方式显示我自己的颜色?我也没有找到什么是“停止”选项...

【问题讨论】:

    标签: javascript colors highcharts radial-gradients


    【解决方案1】:

    map 中使用您的颜色,而不是 Highcharts 内置的颜色:

    colors: Highcharts.map(<?echo $myColors;?>, 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
            ]
        };
    })
    

    【讨论】:

    • 一个小缺陷....当我单击某个切片时,前 3 个切片的颜色突然变回默认值...我试图在 jsFiddle 中重现它,但它可以正常工作...您有什么想法,这可能是什么原因造成的?我的数组如下所示: $myColors = array('#199ED5','#77CC6D','#F136AD','#FF954E','#FFCC00','#00FFFF','#FF0000','#66FF00' ,'#660099');
    • 已解决!改变的颜色数量实际上等于第二张图表显示的切片(颜色)数量(此时设置为默认颜色)......所以我想在我将自己的颜色主题设置为第二张图表之后,这个问题消失。
    • 另外请注意,我使用颜色名称只是为了测试('red','green','yellow'),而不是十六进制值,它不起作用......所以如果你将您的头撞到墙上,请确保您在此处使用十六进制颜色值。
    • 甚至更多 - 在这种情况下仅支持十六进制格式 (#XXXXXX)。名称('red')或 rgb(a)('rgb(255,0,0)' 或 rgba(255,0,0,0.5))不是。
    • 忽略我的愚蠢评论。我可以这样做来弄清楚:console.log(Highcharts.getOptions().colors)
    猜你喜欢
    • 2019-12-20
    • 2018-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-10
    • 2011-11-27
    • 2020-06-09
    • 1970-01-01
    相关资源
    最近更新 更多