Flex bar chart with Two Y axis
I am trying to create a bar char in action 3 script. But for some reason I am getting 2 y-axis and no x axis.
Can some one help spot the error. I have said "placement " bottom.
The chart creation method is "getBarChartData开发者_如何学C", this method when invoked creates a barchart and adds it to a canvas.
This section is visible completely and can be called on a button click.
For some reason, the CDATA section is interfering with the preview of the snippet.
The standalone code snippet is below.
[Bindable]
public var QUANTITY:ArrayCollection = new ArrayCollection([
{date:"22-Aug-05", quantity:1575.9},
{date:"23-Aug-05", quantity:1603.},
{date:"24-Aug-05", quantity:1507.1},
{date:"25-Aug-05", quantity:1568.8},
]);
private function getBarChartData(evt:MouseEvent):void{
var title:String = "ASDFZXCVB";
var pnlChart:Panel = new Panel();
pnlChart.title = title;
pnlChart.height = 750;
{
var categoryAxisDate:CategoryAxis = new CategoryAxis();
categoryAxisDate.categoryField = "date";
var linearVolumeAxis:LinearAxis = new LinearAxis();
linearVolumeAxis.minimum = 1500;
linearVolumeAxis.maximum = 1700;
var colChart:ColumnChart = new ColumnChart();
colChart.showDataTips = true;
{
var horizontalAxisDateRenderer:AxisRenderer = new AxisRenderer();
horizontalAxisDateRenderer.axis = categoryAxisDate;
horizontalAxisDateRenderer.placement = "bottom";
var quantityRenderer:AxisRenderer = new AxisRenderer();
quantityRenderer.axis = linearVolumeAxis;
quantityRenderer.placement = "left";
colChart.horizontalAxisRenderers.push(horizontalAxisDateRenderer);
colChart.verticalAxisRenderers.push(quantityRenderer);
{
var quantityColumnSeries:ColumnSeries = new ColumnSeries();
quantityColumnSeries.horizontalAxis = categoryAxisDate;
quantityColumnSeries.yField="quantity";
quantityColumnSeries.displayName ="QUANTITY";
quantityColumnSeries.dataProvider = QUANTITY;
quantityColumnSeries.verticalAxis = linearVolumeAxis;
colChart.series.push(quantityColumnSeries);
}
}
pnlChart.addChild(colChart);
}
canvasReportId.addChild(pnlChart);
}
]]>
<mx:Button label="Submit" click="getBarChartData(event)" x="293" y="4"/>
</mx:Canvas>
try to add it with MXML like so:
<mx:ColumnChart id="chart" dataProvider="{QUANTITY}">
<mx:horizontalAxis>
<mx:CategoryAxis
dataProvider="{QUANTITY}"
categoryField="date"
/>
</mx:horizontalAxis>
</mx:ColumnChart>
This worked for me... Ladislav
精彩评论