Flex bug ??使用类型=“100%”搞乱堆积的柱形图

时间:2011-06-14 16:06:44

标签: flex flex4 charts

我正在尝试使用type =“100%”和正值和负值的混合来制作堆积柱形图。 当所有的值都是正数时,功能很好,但是当负数出现在游戏中时,它看起来完全搞砸了。

当我也查看Adobe文档(看here)时,我看到下面的堆积柱形图代码涉及负数:

<?xml version="1.0"?>
<!-- charts/StackedNegative.mxml -->
<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:-2000, Expenses:-1500},
            {Month:"Feb", Profit:1000, Expenses:-200},
            {Month:"Mar", Profit:1500, Expenses:-500}
        ]);
    ]]></mx:Script>
    <mx:Panel title="Column Chart">
        <mx:ColumnChart id="myChart" dataProvider="{expenses}" showDataTips="true">
            <mx:horizontalAxis>
                <mx:CategoryAxis 
                    dataProvider="{expenses}" 
                    categoryField="Month"
                    />
            </mx:horizontalAxis>
            <mx:series>
                <mx:ColumnSet type="stacked" allowNegativeForStacked="true">
                    <mx:series>
                        <mx:ColumnSeries 
                            xField="Month" 
                            yField="Profit" 
                            displayName="Profit"
                            />
                        <mx:ColumnSeries 
                            xField="Month" 
                            yField="Expenses" 
                            displayName="Expenses"
                            />
                    </mx:series>
                </mx:ColumnSet>           
            </mx:series>
        </mx:ColumnChart>
        <mx:Legend dataProvider="{myChart}"/>
    </mx:Panel>
</mx:Application>

工作正常。

但是试着改变:

<mx:ColumnSet type="stacked" allowNegativeForStacked="true">

为:

<mx:ColumnSet type="100%" allowNegativeForStacked="true">

并且您会看到它不是1月数据,两个值都是负值,图表显示好像是正数,而另外两个值是一个值是正数而另一个是负数,它显示只有积极的部分为100%...

这不是Flex Bug吗?我有自己的情况下有这样的数据,它的行为也是一样的错误。我预计,如果在200上堆叠800,它将显示80%和20%,总计100%。

BTW:使用Flex 4,尽管这些都是mx组件。

非常感谢德国柏林, 尼尔。

1 个答案:

答案 0 :(得分:0)

这是一个Flex错误。您可以在以下地址投票: https://bugs.adobe.com/jira/browse/FLEXDMV-2137 和: https://bugs.adobe.com/jira/browse/FLEXDMV-1986

我们遇到了同样的问题。解决方法是构建自己的“百分比”系列并使用经典的堆叠图表。