`
robindut
  • 浏览: 46460 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

关于自定义Flex chart的legend信息

 
阅读更多

不说废话,直接上代码~

<?xml version="1.0" encoding="utf-8"?>
<mx:Application name="PieSeries_labelFunction_test"
				xmlns:mx="http://www.adobe.com/2006/mxml"
				layout="vertical"
				verticalAlign="middle"
				backgroundColor="white"
				creationComplete="init()">
	
	<mx:Script>
		<![CDATA[
			import mx.charts.HitData;
			import mx.charts.LegendItem;
			import mx.charts.chartClasses.LegendData;
			import mx.charts.series.items.PieSeriesItem;
			import mx.collections.ArrayCollection;
			import mx.graphics.SolidColor;
			import mx.utils.StringUtil;
			
			import spark.components.BorderContainer;
			import spark.components.Button;
			import spark.components.HGroup;
			
			[Bindable]
			public var dataLegend:ArrayCollection;
			private function pieSeries_labelFunc(item:Object, field:String, index:Number, percentValue:Number):String {
				return StringUtil.substitute("{0} ({1}%)",
					item.@label,
					percentValue.toFixed(1));
			}
			
			private function init():void{
				var obj:Object = new Object();

				var item:ArrayCollection = new ArrayCollection();
				for(var i:int = 0; i < pieSeries.items.length; i++){
					var pirSItem:PieSeriesItem = pieSeries.items[i] as PieSeriesItem;
					
					var id:LegendData = new LegendData();
					id.label = "Product data:" + i;
					id.aspectRatio = 1;
					var maker:BorderContainer = new BorderContainer();
					maker.height = 5;
					maker.width = 5;
					maker.setStyle("backgroundColor",(pirSItem.fill as SolidColor).color);
					id.marker= maker;
					item.addItem(id);
				}
				
				dataLegend = item
				trace(pieSeries.items);
			}
			
			private function chartTip(e:HitData):String{  
				
					return "";
			} 
		]]>
	</mx:Script>
	
	<mx:XMLListCollection id="dp">
		<mx:source>
			<mx:XMLList>
				<product label="Product 1" data="3" />
				<product label="Product 2" data="1" />
				<product label="Product 3" data="4" />
				<product label="Product 4" data="1" />
				<product label="Product 5" data="5" />
				<product label="Product 6" data="9" />
			</mx:XMLList>
		</mx:source>
	</mx:XMLListCollection>
	
	<mx:Panel styleName="opaquePanel"
			  width="400"
			  height="300">
		<mx:PieChart id="pieChart"
					 dataProvider="{dp}"
					 showDataTips="false"
					 height="100%"
					 width="100%"
					 >
			<mx:series>
				<mx:PieSeries id="pieSeries"
							  field="@data"
							  nameField="@label"
							  labelPosition="callout"
							  labelFunction="pieSeries_labelFunc" />
			</mx:series>
		</mx:PieChart>
		<mx:ControlBar width="100%" >
			<mx:Legend dataProvider="{dataLegend}"
					   direction="horizontal"
					   horizontalGap="100"
					   width="100%" 
					   >
			</mx:Legend>
		</mx:ControlBar>
	</mx:Panel>
	
</mx:Application>



效果图

 

  • 大小: 19.1 KB
0
0
分享到:
评论
2 楼 robindut 2012-10-10  
liuchuxiong2003 写道
你的flex版本是多少了?

4.0
1 楼 liuchuxiong2003 2012-09-05  
你的flex版本是多少了?

相关推荐

    flex 4 check box legend chart

    "Flex 4 check box legend chart"指的是在Flex 4图表组件中,通过复选框图例来控制图表系列的显示与隐藏,为用户提供更直观的交互体验。 在Flex 4中,使用Chart类可以创建各种类型的图表,如条形图、折线图、饼图等...

    flex统计图 柱状 饼图折线

    例如,可以使用ChartStyle和ChartTheme类来更改图表的外观,或者通过Legend类添加图例。 5. **交互性**: Flex图表还支持用户交互,如点击事件、悬停提示和缩放功能。例如,可以监听Chart的itemClick事件,当用户...

    flex组件之数据可视化组件实例源码

    Flex组件是Adobe Flex框架中的重要组成部分,主要用于构建富互联网应用程序(RIA)。在Flex中,数据可视化组件是用于创建各种图表和图形的工具,使开发者能够将复杂的数据转化为易于理解的视觉表示。本实例源码提供...

    flex图表组件

    Flex图表组件是基于Adobe Flex技术开发的一种用于在Web应用...通过学习这个博客和实践FlexChart相关的例子,开发者能够掌握使用Flex创建高效、美观的数据可视化图表的技巧,从而提升Web应用的用户体验和数据解读能力。

    flex统计图标实例,饼状图,柱状图,折线图

    在实际应用中,Flex提供了丰富的自定义选项,包括颜色、样式、交互行为等,以满足各种设计需求。例如,可以通过添加事件监听器来响应用户的鼠标点击,或者使用ChartEffect类实现动态效果,如淡入淡出、缩放等。同时...

    flex graph

    Flex Graph是一种基于Adobe Flex技术的图形绘制库,用于在Web应用程序中创建交互式的图表和图形。Flex是ActionScript 3.0的一个框架,主要用于构建富互联网应用(RIA)。本篇文章将深入探讨Flex Graph的基本概念、...

    ArcGIS教程:Flex制作直观的交互式图表

    - **自定义ID和数据提供者**:为AreaChart组件设置ID,并将dataProvider属性绑定到数据源。 - **显示数据提示**:通过showDataTips属性,启用鼠标悬停时的数据提示。 - **设置水平轴和序列**:配置CategoryAxis为...

    flex anychart一个完整的雷达图示例

    chart.legend().enabled(true); ``` 7. **绘制图表**: 最后,将图表渲染到之前创建的div容器中。 ```javascript chart.container('container'); chart.draw(); ``` 在提供的"Radarchart"压缩包文件中,可能包含了...

    Felx 报表

    在“flex 案例”这个压缩包中,可能包含了各种使用Flex报表的实例,比如如何连接到数据源(如XML、AMF或SQL数据库),如何自定义样式和布局,以及如何实现数据的动态加载和更新。这些案例可能会涉及数据绑定,这是...

    Flex常见效果

    `&lt;mx:AxisRenderer&gt;`是图表轴的渲染器,用于自定义坐标轴的样式和布局。 ##### 3. BarChart `&lt;mx:BarChart&gt;`柱状图,适用于比较不同类别的数值差异。 ##### 4. BubbleChart `&lt;mx:BubbleChart&gt;`气泡图,用于显示三...

    Flex UI组件使用全集

    - **Canvas**: 用于自定义绘制的容器。 - **ControlBar**: 控制栏组件,用于放置工具栏等控件。 - **DivideBox**: 可调整大小的容器,允许用户通过拖拽来调整子组件的大小。 - **Form、FormHeading、FormItem**: ...

Global site tag (gtag.js) - Google Analytics