我在Flex中有一个Line Series Chart,其值介于0到90之间。我想设置图表的背景,0 - 30为绿色,31 - 60为红色,61 - 90是蓝色。
我是Flex新手。有人能告诉我这是怎么做到的吗?
答案 0 :(得分:2)
这是超级老,但我偶然发现谷歌和后来的缘故,想要添加这个。
最好和首选的方法是设置图表的backgroundElements属性。这是一个例子:
<fx:Array id="backgroundChartElements">
<mx:GridLines>
<mx:horizontalFill>
<s:SolidColor color="0x000000" alpha="1" />
</mx:horizontalFill>
<mx:horizontalAlternateFill>
<s:SolidColor color="0x000000" alpha=".5" />
</mx:horizontalAlternateFill>
</mx:GridLines>
</fx:Array>
<mx:LineChart backgroundElements="{backgroundChartElements}" ... />
有关弄乱背景和网格线的更多信息,请参阅this文档
答案 1 :(得分:1)
有一个名为CartesianDataCanvas
的类,专为此类事物而设计。
您可以在图表的backgroundElements
中添加一个实例,并使用绘图API在其上绘图。有用的是这些对象上的绘图API在数据坐标方面工作,而不是屏幕坐标,为您节省大量的转换工作,并使缩放和调整大小更加容易。
更多here
答案 2 :(得分:0)
最简单的方法是将图形最大值和最小值设置为固定值(这样它不会自动重新调整大小)并使用普通的绘图API绘制其后面的颜色条。