2

我试图显示一些整数数据,但 BarChart 在轴上使用小数值,这在这种情况下没有意义。有没有办法强制图表只在轴上使用整数值?我不知道范围,所以它可以是从 1 到 10000000 的任何值,所以我不能明确地设置所有内容。

4

5 回答 5

5

我自己遇到了这个问题,并使用自定义 labelFunction 来解决我需要更改的轴。

图表 MXML:

<mx:BarChart dataProvider="{data}" width="100%" height="100%">
    <mx:series>
            <mx:BarSeries xField="x" yField="y" />
    </mx:series>
    <mx:verticalAxis>
        <mx:LinearAxis id="verticalAxis" labelFunction="verticalAxis_labelFunction" />
    </mx:verticalAxis>
</mx:BarChart>

labelFunction脚本:

protected function verticalAxis_labelFunction(labelValue:Object, previousValue:Object, axis:IAxis):String
{
    if (Number(labelValue) != int(labelValue))
        return "";
    else
        return String(labelValue);
}

这种方法的一个缺点是对于十进制值仍然会出现刻度。

于 2011-05-12T22:43:08.970 回答
3

我发现那<mx:LinearAxis interval="1"/>行得通。对于较小的范围,例如 0-2,它标记为 0、1、2,但对于较大的范围,例如 0-16,它标记为 0、5、10、15。

于 2011-12-01T23:04:21.223 回答
1

将 maximumLabelPrecision 设置为 0。 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/charts/LinearAxis.html

<mx:verticalAxis>
    <mx:LinearAxis id="valueAxis" maximumLabelPrecision="0"/>
</mx:verticalAxis>
于 2012-03-02T21:09:30.860 回答
0

ChartName.Series(seriesName).YValueType = ChartValueType.Int32

从 - (Visual Studio 2010 图表控件:使 Y 轴成为整数值,而不是小数

于 2016-05-17T02:32:39.017 回答
-1

我认为您绝对需要向我们展示发生这种情况的示例。当我这样做时(在一个非常简单的示例中),即使我的数据由Numbers 组成,我也会在轴上得到整数:

<fx:Script>
    <![CDATA[
        import mx.collections.ArrayCollection;

        var data:ArrayCollection = new ArrayCollection([
            { x: 5.5555333343, y: 5.111 },
            { x: 7.2, y: 9.5 },
            ]);

    ]]>
</fx:Script>

<mx:BarChart dataProvider="{data}" width="100%" height="100%">
    <mx:series>
        <mx:BarSeries xField="x" yField="y" />
    </mx:series>
</mx:BarChart>

在此处输入图像描述

于 2011-03-31T10:33:38.187 回答