Flex Chart排序ColumnSeries订单

时间:2012-08-30 17:19:58

标签: sorting flex bar-chart series

我正在尝试创建一个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的顺序进行排序,但我似乎无法找到我将如何真正感谢某人对图表的卓越知识。 ;)

0 个答案:

没有答案