我正在尝试创建一个BarChart,它将在一个ColumnSeries中以依赖于该值的顺序显示值。
例如,如果我在BarChart中有一个ColumnSeries,一个显示利润,另一个显示费用,如果利润超过费用,它将正确呈现,因为费用系列呈现在最顶层。
但是,如果费用超过利润,则利润将无法查看,因为它将在费用之下呈现。
此时我将尝试包含一个图像来显示我的问题......
好的,事实证明我不允许显示图像:(
图像显示2月的利润为500,但1月份的利润为300,因为500的费用显示在它上面。
您可以运行以下代码来创建示例:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script><![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
public var expenses:ArrayCollection = new ArrayCollection([
{Month:"Jan", Profit:300, Expenses:500},
{Month:"Feb", Profit:500, Expenses:300}
]);
]]></mx:Script>
<mx:Panel title="Bar Chart">
<mx:BarChart id="myChart" dataProvider="{expenses}" showDataTips="true" type="overlaid" >
<mx:verticalAxis>
<mx:CategoryAxis dataProvider="{expenses}" categoryField="Month" />
</mx:verticalAxis>
<mx:series>
<mx:BarSeries yField="Month" xField="Profit" displayName="Profit" />
<mx:BarSeries yField="Month" xField="Expenses" displayName="Expenses" />
</mx:series>
</mx:BarChart>
<mx:Legend dataProvider="{myChart}"/>
</mx:Panel>
一个明显的解决方案是使BarChart类型“聚集”,因为两个值都会被看到,但是我的客户端要求BarChart被“覆盖”,所以目前隐藏了一些较小的值。
我希望有一种方法可以对BarSeries的顺序进行排序,但我似乎无法找到我将如何真正感谢某人对图表的卓越知识。 ;)