区域图

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
		<mx:Stroke id="s1"
				   color="red"
				   alpha="0.4"
				   weight="2"
				   />
		<mx:Stroke id="s2"
				   color="blue"
				   alpha="0.4"
				   weight="2"
				   />
		<mx:Stroke id="s3"
				   color="black"
				   alpha="0.4"
				   weight="2"
				   />
		
		<!--定义图表填充的样式-->
		<mx:SolidColor id="sc1"
					   color="red"
					   alpha="0.3"/>
		<mx:SolidColor id="sc2"
					   color="blue"
					   alpha="0.3"/>
		<mx:SolidColor id="sc3"
					   color="black"
					   alpha="0.3"/>
		
		<mx:RadioButtonGroup id="stateInp" />
	</fx:Declarations>
	<fx:Script>
		<![CDATA[
			import mx.charts.HitData;
			import mx.charts.series.AreaSeries;
			import mx.charts.series.items.AreaSeriesItem;
			import mx.collections.ArrayCollection;
			
			[Bindable]
			private var ac:ArrayCollection=new ArrayCollection([
				{Month: '一', All: 1700, yearOf2013: 1500, yearOf2014: 200},
				{Month: '二', All: 4000, yearOf2013: 3000, yearOf2014: 1000}, 
				{Month: '三', All: 1000, yearOf2013: 300, yearOf2014: 700}, 
				{Month: '四', All: 900, yearOf2013: 500, yearOf2014: 400}, 
				{Month: '五', All: 2300, yearOf2013: 500, yearOf2014: 1800}, 
				{Month: '六', All: 500, yearOf2013: 400, yearOf2014: 100},
				{Month: '七', All: 2000, yearOf2013: 500, yearOf2014: 1500}, 
				{Month: '八', All: 700, yearOf2013: 300, yearOf2014: 400}, 
				{Month: '九', All: 800, yearOf2013: 300, yearOf2014: 500}, 
				{Month: '十', All: 4000, yearOf2013: 1500, yearOf2014: 2500}, 
				{Month: '十一', All: 900, yearOf2013: 400, yearOf2014: 500}, 
				{Month: '十二', All: 700, yearOf2013: 100, yearOf2014: 600}
			]);
			[Bindable]
			private var acXwq:ArrayCollection=new ArrayCollection([
				{Month: '一', All: 1100, yearOf2013: 1000, yearOf2014: 100},
				{Month: '二', All: 1700, yearOf2013: 1000, yearOf2014: 700}, 
				{Month: '三', All: 500, yearOf2013: 100, yearOf2014: 400}, 
				{Month: '四', All: 300, yearOf2013: 200, yearOf2014: 100}, 
				{Month: '五', All: 1300, yearOf2013: 200, yearOf2014: 1100}, 
				{Month: '六', All: 260, yearOf2013: 200, yearOf2014: 60},
				{Month: '七', All: 1200, yearOf2013: 200, yearOf2014: 1000}, 
				{Month: '八', All: 300, yearOf2013: 100, yearOf2014: 200}, 
				{Month: '九', All: 300, yearOf2013: 100, yearOf2014: 200}, 
				{Month: '十', All: 1500, yearOf2013: 1000, yearOf2014: 500}, 
				{Month: '十一', All: 500, yearOf2013: 200, yearOf2014: 300}, 
				{Month: '十二', All: 230, yearOf2013: 30, yearOf2014: 200}
			]);
			[Bindable]
			private var acQhq:ArrayCollection=new ArrayCollection([
				{Month: '一', All: 600, yearOf2013: 500, yearOf2014: 100},
				{Month: '二', All: 2300, yearOf2013: 2000, yearOf2014: 300}, 
				{Month: '三', All: 500, yearOf2013: 200, yearOf2014: 300}, 
				{Month: '四', All: 600, yearOf2013: 300, yearOf2014: 300}, 
				{Month: '五', All: 1000, yearOf2013: 300, yearOf2014: 700}, 
				{Month: '六', All: 240, yearOf2013: 200, yearOf2014: 40},
				{Month: '七', All: 800, yearOf2013: 300, yearOf2014: 500}, 
				{Month: '八', All: 400, yearOf2013: 200, yearOf2014: 200}, 				
				{Month: '九', All: 500, yearOf2013: 200, yearOf2014: 300}, 				
				{Month: '十', All: 2500, yearOf2013: 500, yearOf2014: 2000},				
				{Month: '十一', All: 400, yearOf2013: 200, yearOf2014: 200}, 				
				{Month: '十二', All: 470, yearOf2013: 70, yearOf2014: 400}
			]);
			private function labelFunc(categoryValue:Object, previousCategoryValue:Object, axis:CategoryAxis, categoryItem:Object):String {
				return categoryItem.Month+'月份'
			}
			private function dataTipFunc(hitData:HitData):String {   
				var t:String = '';
				var areaSerStr:String = (hitData.chartItem.element as AreaSeries).yField.toString();
				switch ( areaSerStr) {
					case 'All':
						t = '全部数量';
						break;
					case 'yearOf2013':
						t = '2013年数量';
						break;
					case 'yearOf2014':
						t = '2014年数量';
						break;
				}
				var a:String=(hitData.chartItem as AreaSeriesItem).item.Month+'月份:' 
					+ '\n' + t+ ':  ' + (hitData.chartItem as AreaSeriesItem).yValue;
				return a;
			}
		]]>
	</fx:Script>
	<mx:AreaChart id="areaChart" dataProvider="{ac}" 
				  x="50" y="100" width="80%" 
				  dataTipFunction="dataTipFunc"
				  showDataTips="true">
		<mx:horizontalAxis>
			<mx:CategoryAxis categoryField="Month" labelFunction="labelFunc" displayName="月份" title="月份"/>
		</mx:horizontalAxis>
		<mx:series>
			<mx:AreaSeries areaFill="{sc1}" areaStroke="{s1}" yField="All" displayName="全部">
				<mx:showDataEffect>
					<mx:SeriesInterpolate duration="1000"/>
				</mx:showDataEffect>
			</mx:AreaSeries>
			<mx:AreaSeries areaFill="{sc2}" areaStroke="{s2}" yField="yearOf2013" displayName="2013年">
				<mx:showDataEffect>
					<mx:SeriesInterpolate duration="1000"/>
				</mx:showDataEffect>
			</mx:AreaSeries>
			<mx:AreaSeries areaFill="{sc3}" areaStroke="{s3}" yField="yearOf2014" displayName="2014年">
				<mx:showDataEffect>
					<mx:SeriesInterpolate duration="1000"/>
				</mx:showDataEffect>
			</mx:AreaSeries>
		</mx:series>
	</mx:AreaChart>
	<mx:Legend dataProvider="{areaChart}" direction="horizontal"/>
	<s:HGroup paddingTop="35" paddingLeft="5">
		<mx:RadioButton groupName="stateInp" id="all" value="1" selected="true" click="areaChart.dataProvider = this.ac" label="全部" width="64" height="100%" />  
		<mx:RadioButton groupName="stateInp" id="on" value="0" click="areaChart.dataProvider = this.acXwq" label="玄武区" width="100%" height="100%"/> 
		<mx:RadioButton groupName="stateInp" id="off" value="2" click="areaChart.dataProvider = this.acQhq" label="秦淮区" width="100%" height="100%"/> 
	</s:HGroup>
</s:Application>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值