以下代码的最后一行(从HighCharts演示图表页面中复制)更改了arearange
系列的不透明度:
var chart=Highcharts.chart('container', {
series: [{
name: 'Temperature',
data: averages,
zIndex: 1,
marker: {
fillColor: 'white',
lineWidth: 2,
lineColor: Highcharts.getOptions().colors[0]
}
}, {
name: 'Range',
data: ranges,
type: 'arearange',
lineWidth: 0,
linkedTo: ':previous',
color: Highcharts.getOptions().colors[0],
fillOpacity: 0.3,
zIndex: 0,
marker: {
enabled: false
}
}]
});
chart.series[1].update({fillOpacity:0.7},true);
JSFiddle here。
(不透明度可以直接在图表对象内部设置,但是我需要在图表创建后对其进行修改,代码是一个模拟我的需求的玩具示例)
我的真实图表有几个arearange
系列,对其进行更新很繁琐。有没有一种避免使用.update
方法的修改此类属性的方法?那样,有没有办法直接访问与svg
系列相对应的arearange
元素?
我尝试检查序列.graph
的属性,如先前在回答similar的问题中所建议的那样,但是在这种情况下,arearange
系列没有.graph
属性。
答案 0 :(得分:1)
可以与问题中提到的答案完全相同,但是不必修改graph
,而必须修改area
属性。
代码:
chart.series[1].area.attr({
fill: 'rgba(124,181,236,0.7)'
});
演示: