我有如下類:Flex:動態創建的系列不會顯示在圖表上?
package my.controls.charts.series
{
import mx.charts.series.LineSeries;
import mx.collections.ArrayCollection;
import mx.graphics.SolidColorStroke;
import my.controls.charts.ICommonCharts;
public class TimeLineSeries extends LineSeries implements ICommonCharts
{
[Bindable]
protected var dataProviderLineSeries : ArrayCollection;
public var rawData : Array;
public function TimeLineSeries(seriesName : String)
{
super();
this.displayName = seriesName;
this.yField = "value";
this.xField = "dateBegin";
this.sortOnXField = true;
this.filterData = true;
this.setStyle("form", "segment");
var stroke : SolidColorStroke = new SolidColorStroke();
stroke.color = 0xFF0000;
stroke.weight = 1;
this.setStyle("lineStroke", stroke);
rawData = new Array();
dataProviderLineSeries = new ArrayCollection();
this.dataProvider = dataProviderLineSeries;
}
public function Clear() : void
{
rawData = [];
dataProviderLineSeries.removeAll();
}
public function ApplyData() : void
{
dataProviderLineSeries.removeAll();
dataProviderLineSeries = new ArrayCollection(rawData);
dataProviderLineSeries.refresh();
}
}
}
應用我試圖後續:
dinamicSeries:陣列=新的Array(); mySeries:TimeLineSeries = new TimeLineSeries('chronos'); mySeries.rawData = randomData(); //它是一個獲得一些隨機數據的函數 mySeries.ApplyData(); dinamicSeries.push(mySeries);
mainChart.series = dinamicSeries;
新的系列名稱出現在圖表上,但數據用盡,圖表始終保持空白。 - 我在做什麼錯?
我已分配,但似乎並未影響它。有沒有特定的方法來做到這一點? –
嗯,是的:mySeries.verticalAxis = myVerticalAxis; – LoremIpsum
你可能會發現這個例子有助於http://flexdiary.blogspot.com/2008/08/charting-example.html –