我已经实现了 HighCharts Column Chart ,它由单一的蓝色着色 . 我想根据列的值为图表的每一列着色 . 例如,如果第一列具有10个值而第二列具有20个值,那么蓝色的亮度应该根据它们的值动态地改变两个列 .
HighCharts Column Chart
我找到了一些解决方案,这些解决方案通过条件以不同颜色着色到列a . 但我想改变颜色的亮度等级 . 颜色值将是任何单个值 .
感谢this answer提供使用'zones'的建议,这为我的答案提供了基础 .
您可以将不同的颜色指定为您想要使用的任何颜色的不同“阴影”,在本例中为蓝色 . 有4个区域,每个区域都有不同类型的蓝色 .
为了处理动态数据(即您不知道值范围),您可以根据输入数据数组中最大值的百分比来计算区域范围 . 在这种情况下,4个区域定义为25%,50%,75%和100% .
var d = [7.0, 6.9, 9.5, 10.0, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]; var max = Math.max.apply(Math, d); $(function() { $('#container').highcharts({ chart: { type: 'column' }, plotOptions: { column: { zones: [{ value: max * 0.25, color: '#aaf' }, { value: max * 0.5, color: '#88f' }, { value: max * 0.75, color: '#66f' }, { color: '#44f' }] } }, series: [{ data: d }] }); });
Here is a working example .
1 回答
感谢this answer提供使用'zones'的建议,这为我的答案提供了基础 .
您可以将不同的颜色指定为您想要使用的任何颜色的不同“阴影”,在本例中为蓝色 . 有4个区域,每个区域都有不同类型的蓝色 .
为了处理动态数据(即您不知道值范围),您可以根据输入数据数组中最大值的百分比来计算区域范围 . 在这种情况下,4个区域定义为25%,50%,75%和100% .
Here is a working example .