0

フュージョン チャートを使用してレンダリングされた複数のチャートを含むページがあり、データを入力するためにデータベースから大量のデータを取得しています。一部のチャートがタイムアウトになり、継続的なスピナーが発生し、http 要求が中止されます。そのグラフの URL がブラウザで個別に実行されると、同じグラフが表示されます。jquery.ajax 呼び出しのタイムアウト値を増やしましたが、うまくいきません。フラッシュ プレーヤー レベルでタイムアウトが発生すると想定しています。このタイムアウトの問題を処理するにはどうすればよいですか?

4

1 に答える 1

2

これが発生する理由はさまざまで、回避策もいくつかあります。

  1. FusionCharts の最新バージョンを使用していますか? そうでない場合は、アップグレードすることをお勧めします。FusionCharts の新しい JavaScript フレームワークは、AJAX を使用してデータをフェッチします。これは、より安定して信頼できるものになる可能性があります。すでに最新バージョンを使用している場合は、非推奨の API ( など.setDataURL) を使用していないこと、および純粋な HTML 埋め込みメソッドを使用していないことを確認してください。
  2. また、推奨されているよりも多くのデータポイントを配置しようとしており、すべてのチャートをレンダリングするには負荷が大きすぎる可能性があります. 一般に、チャートは 300 ~ 500 ポイントで適切に表示されます (構成が単純な場合はさらに高くなります)。円グラフは 100 ポイントまで有効です。データが多すぎる場合は、ZoomLineグラフを使用してみてください。
  3. その他の理由として、ネットワーク負荷が考えられます。同時に読み込もうとするデータが多すぎると、ブラウザが接続を中止したりタイムアウトしたりします。接続が遅いか、古いブラウザを使用していますか? ずらした方法でチャートをチェーンロードしてみてください (つまり、1 つのチャートがFC_Renderedイベントを起動すると、次のチャートがレンダリングされます... など)。
  4. jQuery AJAX を使用してデータを直接取得することもできます。すべてのデータが読み込まれたらXML.setXMLData().

グラフの JavaScript バリアントを使用している場合でも、これが発生するかどうかを確認することもできます。そうでない場合は、それを使い続けることができます。

PS: この方法で回答するのが遅くなります...しかし、まだループにいる場合は、役立つかもしれません。:P

于 2012-04-26T18:54:43.257 に答える