2011-10-19 94 views
0

我有多頁使用融合圖表呈現的圖表,我從數據庫中提取大量數據以填充它們。 一些圖表超時並且連續微調,http請求被中止。如果該圖表的URL單獨在瀏覽器中運行,則會顯示相同的圖表。 我已經增加了jquery.ajax調用的超時值,但這不起作用,我假設超時發生在flash播放器級別。總之要處理這個超時問題?融合圖表超時

+0

這是因爲服務器端腳本超時了嗎? – sudipto

回答

2

爲什麼會發生這種情況有各種各樣的問題,還有一些解決方法。

  1. 您使用的是最新版本的FusionCharts?如果沒有,那麼升級將是一個好主意。 FusionCharts最新的JavaScript框架使用AJAX獲取數據。這可能會變得更加穩定和可靠。如果您已經在使用最新版本,請檢查您是否沒有使用任何已棄用的API(如.setDataURL),並且您沒有使用純HTML嵌入方法。
  2. 也可能是因爲您試圖放置太多的數據點而不是推薦,並且所有圖表渲染的負載都太大。一般情況下,圖表渲染精度爲300-500點(如果配置簡單,則圖表更高)。餅圖可用於達到100分。如果您的數據太多,請嘗試使用ZoomLine圖表。
  3. 其他原因可能是網絡負載。試圖併發加載的太多數據會導致瀏覽器中止/超時連接。你是在一個緩慢的連接或較舊的瀏覽器?嘗試以交錯的方式鏈接加載圖表(即,當一個圖表觸發FC_Rendered事件,呈現下一個...等等。)
  4. 您還可以嘗試直接使用jQuery AJAX獲取數據,並且在加載所有數據時,您可以通過使用.setXMLData()作爲XML字符串提供數據來開始渲染圖表。

您還可以檢查是否出現這種情況,即使您使用JavaScript變體的圖表。如果沒有,那麼你可以堅持使用它。 PS:以這種方式回答遲到...但如果你仍然在循環中,這可能會有所幫助。 :P

+0

嗨Shamasis,感謝您的意見和建議。我們確實嘗試了一些更改,並通過在後端使用匯總表來解決此問題。由於數據檢索速度很慢,一張頁面上有多個圖表,因此圖表已經超時。我們現在使用JavaScript版本的圖表,因爲它們更輕,更受支持。 –

+0

@pri_dev所以,問題主要是服務器端腳本超時或AJAX /網絡傳輸?你有沒有嘗試我在第3點提到的交錯/鏈式加載方法? –

+0

下次我使用它時,我一定會嘗試它。 –