在HighCharts中,是否可以在一个系列中使用不同的彩色图表?

时间:2015-06-01 05:51:38

标签: javascript colors highcharts

我有一个单独的系列柱形图,x轴为日期时间,y轴为某个常数值。我想根据我的一些信息显示不同颜色的列,这可能吗?

e.g。我有动态数据来绘制我的图表,我使用series.addPoint({x:x,y:value,extra:info}, false, false)绘制相同的图表。根据信息,我该如何改变颜色?

我对javascript和highcharts很新。所以请原谅我有限的知识,对正确方向的任何帮助都会受到赞赏。

更新的代码:

 if(type=='a')
    color='#7cb5ec';
else
    if(type=='b')
        color='#f45b5b';
    else
        if(type=='c')
            color='#8085e9';
        else
            if(type=='d')
                color='#2b908f';
            else
                color='#e4d354';
series.addPoint({x:x,y:value,extra:info,marker:{fillColor:color}}, false, false);

我还设置了colorByPoint: true选项。 series.addPoint函数在一个循环中运行,该循环在我获取数据时运行。

2 个答案:

答案 0 :(得分:1)

试试以下

            plotOptions: {
                column: {
                    colorByPoint: true
                }
            },
            colors: [
                '#7cb5ec', '#434348', '#90ed7d', '#f7a35c', '#8085e9', 
                '#f15c80', '#e4d354', '#2b908f', '#f45b5b', '#91e8e1'
            ],

Fiddle link :)

更新1:

Dynamic series fiddle:)

更新2:

使用以下代码为特定栏

指定特定颜色
chart.series[0].addPoint({y: Math.random() * 100, color:'#659355'}, true, true);

答案 1 :(得分:1)

您还可以将colorByPoint: true放在series选项中。

通过这种方式,我可以在项目中分享谁的关注点。

plotOptions: {
      series: {
        pointWidth: 30,
        colorByPoint: true,
        dataLabels: {
          format: '{point.y:.0f}억원',
          enabled: true,
          align: 'right',
          color: '#FFFFFF',
          x: -5,
          y: 3,
          style: {
            fontSize: "16px",
            color: '#fff',
            fontWeight: '500',
          }
        }
      }
    },