我对 Adobe Flex SDK 4.5 和 4.5.1 中的笛卡尔图表有疑问。也许这是一个错误,因为它不在 SDK 4.0、4.1 和 4.6 中。或者这只是我的代码的问题。
我做了一个小示例项目来覆盖笛卡尔图表(线/面积/柱/条)中的系列数据,有点像谷歌金融图表。当我将所有系列添加到图表时,问题没有发生。只有当我有多个系列并删除一个或多个系列而不是数据范围时,系列数据才会被压缩:
当我覆盖当前数据时,水平轴似乎没有改变或没有得到图表数据改变的更新。
这是我项目的主要代码,我在折线图中添加系列,删除系列并覆盖所有图表系列。
public function addChartSeries(name:String, dataProvider:Array):void
{
var lineSeries:LineSeries = new LineSeries();
lineSeries.xField = "date";
lineSeries.yField = "value";
lineSeries.displayName = name;
lineSeries.dataProvider = dataProvider;
var mySeries:Array = new Array();
mySeries = lineChart.series;
mySeries.push(lineSeries);
lineChart.series = mySeries;
}
public function removeSeries(index:int):void
{
var mySeries:Array = new Array();
mySeries = lineChart.series;
mySeries.splice(index, 1);
lineChart.series = mySeries;
}
private function changeDataProvider():void
{
var series:Array = lineChart.series;
for (var i:int = 0; i < series.length; i++)
{
var lineSeries:LineSeries = series[i];
var item:ChartItem = chartItems.getItemAt(i) as ChartItem;
lineSeries.dataProvider = item.data.slice(leftindex, rightIndex);
}
lineChart.series = series;
}
有人遇到同样的问题或知道如何以另一种方式删除系列?