在HighCharts中的单个序列中可能有不同的彩色图形吗?

问题描述 投票:0回答:2

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

例如我有动态数据来绘制图形,我使用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函数在循环中运行,并在获取数据时运行。

javascript colors highcharts
2个回答
2
投票

尝试以下内容

            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);

0
投票

您也可以将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',
          }
        }
      }
    },
© www.soinside.com 2019 - 2024. All rights reserved.