<?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">
<s:layout>
<s:BasicLayout/>
</s:layout>
<fx:Script>
<![CDATA[
import mx.charts.events.ChartItemEvent;
import mx.charts.series.items.PieSeriesItem;
import mx.controls.Alert;
import mx.effects.easing.Elastic;
[Bindable]
private var arr:Array = [
{id:1,city:'北京',money:1000,pay:300},
{id:2,city:'上海',money:1200,pay:500},
{id:3,city:'天津',money:80,pay:200},
{id:4,city:'常州',money:100,pay:200},
{id:5,city:'海南',money:500,pay:200},
{id:6,city:'昆山',money:600,pay:200},
{id:7,city:'苏州',money:200,pay:200}
];
private var _selectedRegion:Object;
public function set selectedRegion(item:Object):void
{
_selectedRegion = item;
var index:int = -1;
for (var i:int=0; i < arr.length && index == -1; i++)
{
if (arr[i].money == item.money)
index = i;
}
var explodeData:Array = [];
// if(explodeData[index]==null){
explodeData[index] = 0.1;
// }else{
// explodeData[index] = 0;
// }
piechart1.series[0].perWedgeExplodeRadius = explodeData;
}
protected function piechart1_itemClickHandler(event:ChartItemEvent):void
{
// TODO Auto-generated method stub
var item:PieSeriesItem = event.hitData.chartItem as PieSeriesItem;
var degrees:Number = radiansToDegrees(item.startAngle);
var arr1:Array = [];
// if (checkBox.selected) {
arr1[item.index] = 0.1;
// }
pieSeries.perWedgeExplodeRadius = arr1;
pieSeries.startAngle -= degrees;
//arr.refresh();
}
private function radiansToDegrees(radians:Number):Number {
return radians * (180 / Math.PI);
}
]]>
</fx:Script>
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
<mx:SeriesInterpolate id="interpolate" elementOffset="10" easingFunction="{Elastic.easeOut}"/>
</fx:Declarations>
<mx:PieChart x="110" y="51" id="piechart1" dataProvider="{arr}" itemClick="piechart1_itemClickHandler(event)"
showAllDataTips="true" selectionMode="single">
<mx:series>
<mx:PieSeries id="pieSeries" displayName="Series 1" field="money" labelPosition="callout"
labelField="city" nameField="city">
</mx:PieSeries>
</mx:series>
<!--鼠标移动-->
<mx:rollOverEffect>
<s:Fade alphaFrom="0.5" alphaTo="1" duration="1000" />
</mx:rollOverEffect>
<mx:rollOutEffect>
<s:Fade alphaFrom="1" alphaTo="0.5" duration="1000" />
</mx:rollOutEffect>
</mx:PieChart>
<mx:Legend x="13" y="469" dataProvider="{piechart1}" direction="horizontal" labelPlacement="right"/>
</s:Application>
转载请标明出处
http://blog.csdn.net/jellyjiao2008/article/details/7035595
Flex4 的PieChart的点击滑动
最新推荐文章于 2023-05-24 11:44:24 发布