2012-03-02 7 views
0

からシリーズを取り除く私は、AdobeのFlex SDK 4.5および4.5.1でデカルトのチャートに問題があります。 SDK 4.0,4.1,4.6にはないため、おそらくバグです。それとも、私のコードの問題です。バグ/エラーデカルトチャート

私はちょっとexample projectを、Googleの財務チャートのようなCartesianChart(ライン/エリア/カラム/バー)のシリーズデータの範囲に設定しました。すべてのシリーズをグラフに追加すると、問題は発生しませんでした。私は複数のシリーズを持っていると1つまたは複数の系列を削除し、データオーバーレンジよりも場合にのみ、系列データが圧縮され得る:

Chart image

これは、横軸が変更されていないように思えるか、取得できませんでした現在のデータの範囲を超えてチャートデータが変更されたことを更新します。ここで

は、私は、折れ線グラフに系列を追加系列を削除し、すべてのchartseriesを超える範囲に私のプロジェクトのメインコード、です。

 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; 
     } 

誰かに同じ問題があったか、別の方法でシリーズを削除する方法がありましたか? JabbyPanda

+0

あなたは、この誤った動作をFlex SDKでどのように見ているのですか? 私はFlex 4.6 SDKでサンプルをテストしましたが、添付の[Chart image]スクリーンショットで示された状況を得ることができませんでした。 – JabbyPanda

+0

@JabbyPandaご返信ありがとうございます。これはSDK 4.5と4.5.1の場合です。 – David

+0

です。この問題はSDK 4.5.1で発生しましたが、4.6では発生しませんでした。 フルアップグレードはあなたのためのオプションがない場合は、私はそれは私のために動作し、4.6 SDKから「charts.swc」ライブラリを交換するだけで示唆しています。 – JabbyPanda

答えて

0

多くのおかげで、彼のcommentは、上記の問題を解決する方法について説明します。 SDK 4.6のcharts.swcをSDK 4.5.1のSDKに「置き換える」だけです。