ANIMATED CHARTS                                                                       as3


Alternative solution for this tutorial, all you need to do is copy this script to actions window. Nothing else is needed on stage..
		
var startX:Number=10;
var startY:Number=220;
var sirka:Number=25;
var vyska:Number=0;
var n:Number=0;


var grafData:Array=[{val:120,col:0xFF0000},{val:200,col:0x00FF00},
					{val:55,col:0x0000FF},{val:171,col:0xFFFF00},
					{val:105,col:0x00FF98},{val:15,col:0x65FFFF},
					{val:88,col:0x000000},{val:190,col:0xFF00FF},
					{val:23,col:0x9900FF},{val:0,col:0xFFFFFF}]; 
						//last value should be 0

var i:Number=(grafData.length) - 1;

var mojGraf:Shape = new Shape();
var valuesArray:Array = new Array();

var myDelay:Timer=new Timer(10);
myDelay.addEventListener(TimerEvent.TIMER, generateCHART);
myDelay.start();

function generateCHART(event:TimerEvent):void {
	
	mojGraf.graphics.beginFill(grafData[n].col);
	mojGraf.graphics.drawRect(startX+(n*35),startY,sirka,(grafData[n].val/100)*vyska);
	mojGraf.graphics.endFill();
	mojGraf.graphics;
	addChild(mojGraf);
	trace(vyska+" | "+grafData[n].val+" | "+(grafData[n].val/100)*vyska);
	
	if (vyska<-98) {
	
		if(n<i){ 
			valuesArray[n] = new TextField();
			valuesArray[n].width=25;  
			valuesArray[n].textColor=0x000000;
			valuesArray[n].y=startY;
			valuesArray[n].text=grafData[n].val;
			valuesArray[n].x=startX+(n*35);
			addChild(valuesArray[n]);
			n++;
		}else{
			myDelay.stop();
		}
		vyska=0;
	}
	vyska-=2;
}