【发布时间】:2009-11-03 10:34:33
【问题描述】:
我正在使用 mxml 创建图表。 mxml 标签只创建一个有横轴和纵轴的图表。
我的结果事件处理程序具有遍历 xml 结果集并创建所有系列(线系列和堆叠条)的 actionscript 代码。这部分代码运行良好。
现在我需要使用 functionfill 函数为每个系列设置单独的颜色。我发现的所有示例都从 MXML 标记中调用函数填充,如下所示:
<mx:ColumnSeries id="salesGoalSeries"
xField="Name"
yField="SalesGoal"
fillFunction="myFillFunction"
displayName="Sales Goal">
我在从 actionscript 调用函数填充时遇到问题。
构建数据系列的部分代码如下:
if (node.attribute("ConfidenceStatus")=="Backlog"
|| node.attribute("ConfidenceStatus")=="Billings") {
// Create the new column series and set its properties.
var localSeries:ColumnSeries = new ColumnSeries();
localSeries.dataProvider = dataArray;
localSeries.yField = node.attribute("ConfidenceStatus");
localSeries.xField = "TimebyDay";
localSeries.displayName = node.attribute("ConfidenceStatus");
localSeries.setStyle("showDataEffect", ChangeEffect);
localSeries.fillFunction(setSeriesColor(xxx));
// Back up the current series on the chart.
var currentSeries:Array = chart.series;
// Add the new series to the current Array of series.
currentSeries.push(localSeries);
//Add Array of series to columnset
colSet.series.push(localSeries);
//assign columnset to chart
chart.series = [colSet];
我的 setSeriesColor 函数是:
private function setSeriesColor(element:ChartItem, index:Number):IFill {
var c:SolidColor = new SolidColor(0x00CC00);
var item:ColumnSeriesItem = ColumnSeriesItem(element);
//will put in logic here
return c;
}
我在 localSeries.fillFunction(setSeriesColor(xxx)) 行中放了哪些参数?
我尝试将 localSeries 作为第一个参数,但我得到一个隐含的强制错误,告诉我 localSeries 不能转换为 ChartItem。
如何正确调用函数?
【问题讨论】:
标签: apache-flex actionscript charts