Highcharts solidgauge具有绿色/黄色/红色渐变

时间:2016-03-26 20:24:30

标签: javascript jquery css highcharts

我想知道是否可以在左侧以绿色开始渐变(0值),在中间渐变为黄色,然后在“solidGauge”图表的右侧渐渐变为红色。

我在yAxis中尝试了一些配置,但是他们没有按照我想要的那样做:

            yAxis: {
              plotBands: [{
                  color: {
                      linearGradient:  [300, 300, 0, 0],
                      stops: [
                          [0, 'rgb(255, 255, 255)'],
                          [1, 'rgb(150, 200, 155)']
                      ]
                   },
                from: 0,
                to: 100
              }],
           },

enter image description here

            yAxis: {
                  minColor:'#55BF3B',
                  maxColor:'#DF5353',
            },

enter image description here

            yAxis: {
               minColor: gaugeValue >= 80 ? '#FF0000' : (gaugeValue >= 60 ? '#FFFF00' : '#00FF00'),
               maxColor: gaugeValue >= 80 ? '#FF0000' : (gaugeValue >= 60 ? '#FFFF00' : '#00FF00'),
            }

enter image description here

            yAxis: {
               stops: [
                    [0.1, '#55BF3B'], // green
                    [0.5, '#DDDF0D'], // yellow
                    [0.9, '#DF5353'] // red
               ],
            },

enter image description here

好的我知道图像有不同的颜色,因为我使用了不同的Hex值,顺便说一句,结果总是一样的:纯色(基于gaugeValue)。

我想如果我的价值是90%,我可以看到渐变绿色到黄色到红色。像这样:

enter image description here

欢迎提出任何建议。

由于

2 个答案:

答案 0 :(得分:3)

您需要将点的颜色设置为渐变,而不是轴。例如:http://jsfiddle.net/n9gfeor2/

series: [{
  name: 'Speed',
  data: [{
    color: {
      linearGradient: [0, 0, 300, 0],
      stops: [
        [0.1, '#55BF3B'], // green
        [0.5, '#DDDF0D'], // yellow
        [0.9, '#DF5353'] // red
      ]
    },
    y: 80
  }]
 }]

答案 1 :(得分:0)

这可能就是答案: Highchart's gauge with gradient plotband

color: {
                linearGradient:  [300, 300, 0, 0],
                stops: [
                    [0, 'rgb(255, 255, 255)'],
                    [1, 'rgb(150, 200, 155)']
                ]