国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 網(wǎng)站 > WEB開(kāi)發(fā) > 正文

16.6.創(chuàng)建列狀圖的明細(xì)項(xiàng)目效果

2024-04-27 13:52:22
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
16.6.1.問(wèn)題
我想在查看圖表細(xì)目表的時(shí)候添加一個(gè)效果。
16.6.2. 解決辦法
為所選的圖表項(xiàng)目創(chuàng)建一個(gè)新的數(shù)組,然后把列狀圖的數(shù)據(jù)提供器綁定到這個(gè)數(shù)組上。使用SeriesZoom 在總體數(shù)據(jù)集和詳細(xì)數(shù)據(jù)集中轉(zhuǎn)換。
16.6.3.討論
查看圖表的細(xì)目表是一個(gè)用戶(hù)界面的概念,它允許用戶(hù)在一個(gè)較大的數(shù)據(jù)選擇其中一個(gè)特定的數(shù)據(jù)項(xiàng)目來(lái)查看。

圖表的明細(xì)項(xiàng)目效果使你能夠選擇圖表的某一項(xiàng)目然后查看這個(gè)項(xiàng)目更詳細(xì)的數(shù)據(jù)信息。

這個(gè)效果可以通過(guò)設(shè)置圖表的數(shù)據(jù)提供器來(lái)實(shí)現(xiàn)。

當(dāng)數(shù)據(jù)提供器更換的時(shí)候,使用showDataEffect 和hideDataEffect 屬性就可實(shí)現(xiàn)這樣的效果。

在mx.charts.effects 包內(nèi)定義了三個(gè)效果,分別是SeriesInterpolate、SeriesSlide 和SeriesZoom。

以下例子是使用SeriesZoom 效果。
SeriesZoom 類(lèi)通過(guò)horizontalFocus 和verticalFocus 屬性調(diào)用焦點(diǎn)集合來(lái)實(shí)現(xiàn)圖表數(shù)據(jù)的縮放。
+展開(kāi)
-XML
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.charts.series.items.ColumnSeriesItem;
import mx.graphics.SolidColor;
import mx.charts.ChartItem;
import mx.graphics.IFill;
import mx.collections.ArrayCollection;
import mx.charts.HitData;
import mx.charts.events.ChartItemEvent;
//這個(gè)內(nèi)層數(shù)據(jù)集合不僅可以使所有項(xiàng)目一起顯示,也可以使每個(gè)項(xiàng)目獨(dú)立顯示。
[Bindable]
public var overview:ArrayCollection = new ArrayCollection
([
{ date:"01/02/2006", total:3000, food:1300, drinks:1700,other:0, expenses:2700,profit:300},
{ date:"01/08/2006", total:3500, food:1800, drinks:1500,other:200, expenses:2900,profit:600},
{ date:"01/15/2006", total:2600, food:1000, drinks:1600,other:0, expenses:2700, profit:-100},
{ date:"01/22/2006", total:3200, food:1300, drinks:1900,other:0, expenses:2900,profit:200 },
{ date:"02/1/2006", total:2200, food:1200, drinks:1000,other:0, expenses:2100,profit:100 },
{ date:"02/8/2006", total:2600, food:1300, drinks:1600,other:100, expenses:2700,profit:400 },
{ date:"02/16/2006", total:4100, food:2300, drinks:1700,other:100, expenses:2700,profit:200 },
{ date:"02/22/2006", total:4300, food:2300, drinks:1700,other:300, expenses:3300,profit:1000 }]);
[Bindable]
public var drillDownDataSet:ArrayCollection;
[Bindable]
public var mainDataProvider:ArrayCollection = overview;
private function zoomIntoSeries(e:ChartItemEvent):void {
if (mainDataProvider == overview) {
drillDownDataSet =
new ArrayCollection(createDataForDate(e));
columnSeries.displayName = "Daily Breakdown";
columnSeries.yField = "amount";
columnSeries.xField = "type";
ca1.categoryField = "type";
mainPanel.title = "Profits for " +e.hitData.item.date;
mainDataProvider = drillDownDataSet;
else {
mainDataProvider = overview;
columnSeries.displayName = "Profit by date";
columnSeries.yField = "profit";
columnSeries.xField = "date";
ca1.categoryField = "date";
mainPanel.title = "Profit Overview";
}
}
private function profitFunction(element:ChartItem,index:Number):IFill {
// black for profit
var dateColor:SolidColor = new SolidColor(0x000000);
var item:ColumnSeriesItem = ColumnSeriesItem(element);
var profit:Number = Number(item.yValue);
if (profit < 0) {
// red for not profitable
dateColor.color = 0xFF0000;
}
return dateColor;
}
//若列狀圖上某個(gè)特定的數(shù)列被點(diǎn)擊,可使用ChartItemEvent 的hitData 屬性來(lái)獲取這個(gè)被點(diǎn)擊的數(shù)據(jù)。以下是明
private function createDataForDate(e:ChartItemEvent):Array {
var result:Array = [];
var food:Object = { type:"food",
amount:e.hitData.item.food };
var drinks:Object = { type:"drinks",
amount:e.hitData.item.drinks };
var other:Object = { type:"other",
amount:e.hitData.item.other };
var expenses:Object = { type:"expenses",amount:e.hitData.item.expenses };
result.push(food);
result.push(drinks);
result.push(other);
result.push(expenses);
return result;
}

]]>
</mx:Script>
<mx:SeriesZoom id="slideZoomInduration="1000"
verticalFocus="bottom"/>

<mx:SeriesZoom id="slideZoomOutduration="1000"
verticalFocus="bottom"/>

<mx:Panel id="mainPaneltitle="Profitability">
<mx:ColumnChart id="chartshowDataTips="true"
itemClick="zoomIntoSeries(event)"
dataProvider="{mainDataProvider}">

<mx:series>
<!--showDataEffect 和hideDataEffect 屬性指出當(dāng)圖表的數(shù)據(jù)提供器變化時(shí)哪種效果將被顯示。-->
<mx:ColumnSeries id="columnSeriesdisplayName="Total profit"
fillFunction="profitFunctionyField="profitxField="date"
hideDataEffect="slideZoomOutshowDataEffect="slideZoomIn"/>

</mx:series>
<mx:horizontalAxis>
<mx:CategoryAxis id="ca1categoryField="date"/>
</mx:horizontalAxis>
</mx:ColumnChart>
</mx:Panel>
</mx:Application>
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 清涧县| 隆化县| 西昌市| 永城市| 甘泉县| 大洼县| 瓮安县| 沛县| 平昌县| 许昌市| 陈巴尔虎旗| 承德县| 贵定县| 东明县| 安达市| 西青区| 石狮市| 育儿| 军事| 临安市| 长治县| 福安市| 巢湖市| 庆云县| 酉阳| 梨树县| 柘荣县| 栖霞市| 阳春市| 福泉市| 闽侯县| 云霄县| 娱乐| 耒阳市| 新乐市| 东辽县| 泰顺县| 永春县| 保靖县| 洞口县| 镇赉县|