不说废话,直接上代码~
<?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
分享到:
相关推荐
"Flex 4 check box legend chart"指的是在Flex 4图表组件中,通过复选框图例来控制图表系列的显示与隐藏,为用户提供更直观的交互体验。 在Flex 4中,使用Chart类可以创建各种类型的图表,如条形图、折线图、饼图等...
例如,可以使用ChartStyle和ChartTheme类来更改图表的外观,或者通过Legend类添加图例。 5. **交互性**: Flex图表还支持用户交互,如点击事件、悬停提示和缩放功能。例如,可以监听Chart的itemClick事件,当用户...
Flex组件是Adobe Flex框架中的重要组成部分,主要用于构建富互联网应用程序(RIA)。在Flex中,数据可视化组件是用于创建各种图表和图形的工具,使开发者能够将复杂的数据转化为易于理解的视觉表示。本实例源码提供...
Flex图表组件是基于Adobe Flex技术开发的一种用于在Web应用...通过学习这个博客和实践FlexChart相关的例子,开发者能够掌握使用Flex创建高效、美观的数据可视化图表的技巧,从而提升Web应用的用户体验和数据解读能力。
在实际应用中,Flex提供了丰富的自定义选项,包括颜色、样式、交互行为等,以满足各种设计需求。例如,可以通过添加事件监听器来响应用户的鼠标点击,或者使用ChartEffect类实现动态效果,如淡入淡出、缩放等。同时...
Flex Graph是一种基于Adobe Flex技术的图形绘制库,用于在Web应用程序中创建交互式的图表和图形。Flex是ActionScript 3.0的一个框架,主要用于构建富互联网应用(RIA)。本篇文章将深入探讨Flex Graph的基本概念、...
- **自定义ID和数据提供者**:为AreaChart组件设置ID,并将dataProvider属性绑定到数据源。 - **显示数据提示**:通过showDataTips属性,启用鼠标悬停时的数据提示。 - **设置水平轴和序列**:配置CategoryAxis为...
chart.legend().enabled(true); ``` 7. **绘制图表**: 最后,将图表渲染到之前创建的div容器中。 ```javascript chart.container('container'); chart.draw(); ``` 在提供的"Radarchart"压缩包文件中,可能包含了...
在“flex 案例”这个压缩包中,可能包含了各种使用Flex报表的实例,比如如何连接到数据源(如XML、AMF或SQL数据库),如何自定义样式和布局,以及如何实现数据的动态加载和更新。这些案例可能会涉及数据绑定,这是...
`<mx:AxisRenderer>`是图表轴的渲染器,用于自定义坐标轴的样式和布局。 ##### 3. BarChart `<mx:BarChart>`柱状图,适用于比较不同类别的数值差异。 ##### 4. BubbleChart `<mx:BubbleChart>`气泡图,用于显示三...
- **Canvas**: 用于自定义绘制的容器。 - **ControlBar**: 控制栏组件,用于放置工具栏等控件。 - **DivideBox**: 可调整大小的容器,允许用户通过拖拽来调整子组件的大小。 - **Form、FormHeading、FormItem**: ...