亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Flex多樣化餅圖樣式(顏色漸變,點(diǎn)擊分離,環(huán)形

系統(tǒng) 2123 0

創(chuàng)建一個(gè)簡(jiǎn)單的環(huán)形餅圖,通過(guò)PieChart的innerRadius屬性進(jìn)行設(shè)置實(shí)現(xiàn)環(huán)形效果:

    <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
       <mx:Script>
        <![CDATA[
      import mx.collections.ArrayCollection;          
      import mx.charts.HitData;
        [Bindable]
        public var chengjiPie:ArrayCollection = new ArrayCollection( [
            { classs: "60分以下", num: 5 },
            { classs: "60~70分", num: 4 },
            { classs: "70~80分", num:5},
            { classs: "80~90分", num: 4},
            { classs: "90分以上", num: 3}]);
            
        private function displayGold(data:Object, field:String, index:Number, percentValue:Number):String {
            var temp:String= (" " + percentValue).substr(0,6);
            return data.classs + ": " +  '\n' + temp + "%";
        }
        
        ]]>
      
    </mx:Script>
 
    <mx:SolidColor id="sc1" color="0xE46899" alpha=".6"/>
    <mx:SolidColor id="sc2" color="0xAAD71A" alpha=".6"/>
    <mx:SolidColor id="sc3" color="0xFFE30E" alpha=".6"/>
    <mx:SolidColor id="sc4" color="0xFDB500" alpha=".6"/>
    <mx:SolidColor id="sc5" color="0x4CD0EF" alpha=".6"/>


    <mx:Stroke id="callouts" weight="2" color="0x999999" alpha=".8" caps="square"/>
    <mx:Stroke id="radial" weight="1" color="0xFFFFCC" alpha=".3"/>
    <mx:Stroke id="pieborder" color="0x000000" weight="2" alpha=".5"/>


    <mx:Panel  height="100%" width="100%" layout="absolute" fontSize="12">
      
      <mx:PieChart id="chart"  showDataTips="true" width="100%" height="100%"
                 dataProvider="{chengjiPie}" innerRadius=".3" horizontalCenter="0" verticalCenter="0">

                <mx:series>
                    <mx:Array>
                        <mx:PieSeries nameField="classs" labelPosition="callout"  field="num" 
                                      labelFunction="displayGold" >
                         
	                    </mx:PieSeries>
                    </mx:Array>
                </mx:series>

            </mx:PieChart> 
        <mx:Legend dataProvider="{chart}" right="0" bottom="0"/>
    </mx:Panel>

</mx:Application>
  

?

?在這個(gè)簡(jiǎn)單餅圖的基礎(chǔ)上進(jìn)行一些改動(dòng):

1 添加餅圖上顏色塊的漸變效果,用到RadialGradient標(biāo)簽.

2 實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊,該塊分離的效果,對(duì)PieSeries進(jìn)行相關(guān)屬性設(shè)置,explodeRadius:分離程度。PerWedgeExplodeRadius:數(shù)組規(guī)定出每一塊的分離值。

3 添加動(dòng)態(tài)效果,點(diǎn)擊時(shí)的彈動(dòng)變化。showDataEffect標(biāo)簽處添加Elastic.easeOut震動(dòng)效果。

?

    <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
       <mx:Script>
        <![CDATA[
      import mx.collections.ArrayCollection;          
      import mx.charts.HitData;
      import mx.effects.easing.*; 
        [Bindable]
        public var chengjiPie:ArrayCollection = new ArrayCollection( [
            { classs: "60分以下", num: 5 },
            { classs: "60~70分", num: 4 },
            { classs: "70~80分", num:5},
            { classs: "80~90分", num: 4},
            { classs: "90分以上", num: 3}]);
            
        private function displayGold(data:Object, field:String, index:Number, percentValue:Number):String {
            var temp:String= (" " + percentValue).substr(0,6);
            return data.classs + ": " +  '\n' + temp + "%";
        }
       	
		private var _selectedRegion:Object;
		
        public function get selectedRegion():Object
        {
            return _selectedRegion;
        }
        
        public function set selectedRegion(item:Object):void
        {
            _selectedRegion = item;

            var index:int = -1;
            for (var i:int=0; i < chengjiPie.length && index == -1; i++)
            {
                if (chengjiPie[i].classs == item.classs)
                    index = i;
            }
           
            var explodeData:Array = [];
            explodeData[index] = 0.15;
            chart.series[0].perWedgeExplodeRadius = explodeData;
        }
        
        private function regionChange(item:Object):void
        {
            selectedRegion = item;
            dispatchEvent(new Event("regionChange"));
        }

       private function formatDataTip(hitData:HitData):String
        {
            var classs:String = hitData.item.classs;
            var num:Number = hitData.item.num;
            return classs;
        }

        ]]>
      
    </mx:Script>
 
    <mx:SolidColor id="sc1" color="0xE46899" alpha=".6"/>
    <mx:SolidColor id="sc2" color="0xAAD71A" alpha=".6"/>
    <mx:SolidColor id="sc3" color="0xFFE30E" alpha=".6"/>
    <mx:SolidColor id="sc4" color="0xFDB500" alpha=".6"/>
    <mx:SolidColor id="sc5" color="0x4CD0EF" alpha=".6"/>


    <mx:Stroke id="callouts" weight="2" color="0x999999" alpha=".8" caps="square"/>
    <mx:Stroke id="radial" weight="1" color="0xFFFFCC" alpha=".3"/>
    <mx:Stroke id="pieborder" color="0x000000" weight="2" alpha=".5"/>


    <mx:Panel  height="100%" width="100%" layout="absolute" fontSize="12">
      
      <mx:PieChart id="chart"  showDataTips="true" width="100%" height="100%"
                itemClick="regionChange(event.hitData.item)"  dataProvider="{chengjiPie}"  horizontalCenter="0" verticalCenter="0">

                <mx:series>
                    <mx:Array>
                        <mx:PieSeries nameField="classs" labelPosition="callout"  field="num" 
                                      labelFunction="displayGold" >
                              <mx:showDataEffect> 
                               <mx:SeriesInterpolate duration="1500" easingFunction="{Elastic.easeOut}" /> 
                              </mx:showDataEffect> 

                         <mx:fills>
	                        <mx:Array>
	                            <mx:RadialGradient>
	                                <mx:entries>
	                                    <mx:Array>
	                                        <mx:GradientEntry color="#EF7651" ratio="0"/>
	                                        <mx:GradientEntry color="#994C34" ratio="1"/>
	                                    </mx:Array>
	                                </mx:entries>
	                            </mx:RadialGradient>
	                            <mx:RadialGradient>
	                                <mx:entries>
	                                    <mx:Array>
	                                        <mx:GradientEntry color="#E9C836" ratio="0"/>
	                                        <mx:GradientEntry color="#AA9127" ratio="1"/>
	                                    </mx:Array>
	                                </mx:entries>
	                            </mx:RadialGradient>
	                            <mx:RadialGradient>
	                                <mx:entries>
	                                    <mx:Array>
	                                        <mx:GradientEntry color="#6FB35F" ratio="0"/>
	                                        <mx:GradientEntry color="#497B54" ratio="1"/>
	                                    </mx:Array>
	                                </mx:entries>
	                            </mx:RadialGradient>
	                            <mx:RadialGradient>
	                                <mx:entries>
	                                    <mx:Array>
	                                        <mx:GradientEntry color="#A1AECF" ratio="0"/>
	                                        <mx:GradientEntry color="#47447A" ratio="1"/>
	                                    </mx:Array>
	                                </mx:entries>
	                            </mx:RadialGradient>
	                            <mx:RadialGradient>
	                                <mx:entries>
	                                    <mx:Array>
	                                        <mx:GradientEntry color="#BA9886" ratio="0"/>
	                                        <mx:GradientEntry color="#AE775B" ratio="1"/>
	                                    </mx:Array>
	                                </mx:entries>
	                            </mx:RadialGradient>
	                        </mx:Array>
	                    </mx:fills>
	                    </mx:PieSeries>
                    </mx:Array>
                </mx:series>

            </mx:PieChart> 
        <mx:Legend dataProvider="{chart}" right="0" bottom="0"/>
    </mx:Panel>

</mx:Application>

  

?

?除此之外, http://demo.quietlyscheming.com/variablePieCharts/SizedPieCharts.html 上通過(guò)繼承對(duì)ChartPie組件的相關(guān)屬性進(jìn)行重新定義,使得每個(gè)扇形的半徑根據(jù)數(shù)據(jù)的大小進(jìn)行變化。實(shí)現(xiàn)如下效果:

?
?

Flex多樣化餅圖樣式(顏色漸變,點(diǎn)擊分離,環(huán)形)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 最新欧美一级视频 | 伊人一道本 | 香蕉一级视频 | 午夜aaaaaaaaa视频在线 | 四虎国产精品影库永久免费 | 在线欧美视频 | 久久er99热精品一区二区 | 网络毛片 | 日韩永久免费视频 | 天天玩天天干 | 精品国精品国产自在久国产不卡 | 99视频精品在线 | 中文字幕精品在线视频 | 天天操天| 国产精品麻豆高清在线观看 | 国产不卡精品一区二区三区 | 日本高清中文字幕一区二区三区 | 亚洲综合一区二区三区四区 | 欧美成人交tv免费观看 | 国产在线乱子伦一区二区 | 国产香蕉在线视频一级毛片 | 欧美激情在线免费 | 中文字幕在线观看免费 | 久青草免费视频 | 国产亚洲精品一区二区在线播放 | 亚洲一区精品中文字幕 | 亚洲精品123区 | 国产剧情一区二区三区 | 国产一级特黄aa毛片 | 国产99视频在线 | 一级免费毛片 | 深夜在线免费观看 | 欧美一级毛片香蕉网 | 国产婷婷色综合成人精品 | 天天弄天天干 | 久久99精品久久久久久臀蜜桃 | 理论片在线观看视频 | 婷婷亚洲综合一区二区 | 久久精品国产亚洲a不卡 | 亚洲国产二区三区 | 国产精品久久久久一区二区 |