<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" xmlns:ns1="com.anychart.*" layout="absolute" creationComplete="initChart();" viewSourceURL="srcview/index.html">
<mx:TabNavigator width="559" height="422" id="tabCtrl" creationPolicy="all" horizontalCenter="0" verticalCenter="2">
<mx:Canvas label="Chart Preview" width="100%" height="100%" id="chartPage">
<ns1:AnyChartFlex x="0" y="0" width="100%" height="100%" id="chart"/>
</mx:Canvas>
<mx:Canvas label="Output XML" width="100%" height="100%">
<mx:TextArea x="10" y="10" width="537" height="369" id="editOutputXML"/>
</mx:Canvas>
</mx:TabNavigator>
<mx:Script>
<![CDATA[
import mx.collections.XMLListCollection;
import mx.collections.ICollectionView;
import mx.collections.ArrayCollection;
public var expenses:ArrayCollection = new ArrayCollection([
{Month:"January", Profit:2000000, Expenses:1500000,ENo:100},
{Month:"February", Profit:1000000, Expenses:200000,ENo:80},
{Month:"March", Profit:1500000, Expenses:500000,ENo:110},
{Month:"April", Profit:1500000, Expenses:500000,ENo:130}
]);
private function createSeriesFromAC(collection:ArrayCollection,nameField:String,yField:String,type:String=null,seriesName:String=null,... attributes):XML
{
var seriesXML:XML=<series/>;
if(seriesName!=null) seriesXML.@name=seriesName;
if(type!=null) seriesXML.@type=type;
for(var i:int=0;i<collection.length;i++)
{
var pointXML:XML=<point name={collection[i][nameField]} y={collection[i][yField]}/>
if(attributes.length>0)
{
var attributesXML:XML=<attributes/>;
for each(var attrName:String in attributes)
attributesXML.appendChild(<attribute name={attrName}>{collection[i][attrName]}</attribute>);
pointXML.appendChild(attributesXML);
}
seriesXML.appendChild(pointXML);
}
return seriesXML;
}
private function initChart():void
{
var xmlData:XML=
<anychart>
<charts>
<chart plot_type="CategorizedHorizontal">
<data>
{createSeriesFromAC(expenses,"Month","Profit","Bar","Profit","Expenses","ENo")}
</data>
<chart_settings>
<title><text>Company Status</text></title>
<axes>
<y_axis position="Opposite"><title enabled="false"/></y_axis>
<x_axis><title enabled="false"/></x_axis>
</axes>
</chart_settings>
<data_plot_settings>
<bar_series>
<tooltip_settings enabled="true">
<format>{"Month: {%Name}\nProfit: {%Value}\nExpenses: {%Expenses}\nENo: {%ENo}"}</format>
</tooltip_settings>
</bar_series>
</data_plot_settings>
</chart>
</charts>
</anychart>;
chart.anychartXML=xmlData;
editOutputXML.text=xmlData.toXMLString();
}
]]>
</mx:Script>
</mx:Application>