我需要根据用户输入在柱形图的垂直轴的两个刻度之间绘制特定数量的次要刻度。
例如:如果用户提供 2 作为“次要刻度数”,则轴的两个刻度之间应该有两个次要刻度。这如何在 Flex 笛卡尔图中完成。
提前致谢。
我需要根据用户输入在柱形图的垂直轴的两个刻度之间绘制特定数量的次要刻度。
例如:如果用户提供 2 作为“次要刻度数”,则轴的两个刻度之间应该有两个次要刻度。这如何在 Flex 笛卡尔图中完成。
提前致谢。
首先,LinearAxis
在这种情况下,你应该使用你的轴。
LinearAxis
属性interval
和minorInterval
属性。如果您想在主要刻度之间看到N个次要刻度,请执行
axis.minorInterval = axis.interval / (N+1)
注意:小刻度总是被画出来的,所以如果你想让它们在大刻度上不可见,你应该为它们选择好的笔触和位置。
这是在主要刻度之间有 3 个次要刻度的示例图表(对不起,做了一个水平轴......但我想这对你来说并不重要):
>
<fx:Declarations>
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.events.ResizeEvent;
[Bindable]
public var arr:ArrayCollection = new ArrayCollection([{x:10, y:2},
{x:1, y:2},
{x:2, y:2},
{x:3, y:3},
{x:4, y:2},
{x:5, y:2},
{x:6, y:2}
]
);
]]>
</fx:Script>
<mx:LineChart dataProvider="{arr}" width="100%" height="100%">
<mx:horizontalAxis>
<mx:LinearAxis
id="a"
interval="4"
minorInterval="1"
maximumLabelPrecision="4"
/>
</mx:horizontalAxis>
<mx:horizontalAxisRenderers>
<mx:AxisRenderer id="ax" axis="{a}" minorTickLength="5" tickLength="10"
minorTickPlacement="outside"
tickPlacement="outside"
>
<mx:minorTickStroke>
<s:SolidColorStroke />
</mx:minorTickStroke>
</mx:AxisRenderer>
</mx:horizontalAxisRenderers>
<mx:series>
<mx:LineSeries yField="y" xField="x" >
</mx:LineSeries>
</mx:series>
</mx:LineChart>