2013-07-25 76 views
3

好吧,所以我有一個Highcharts圖表,可以正確顯示數據庫中的數據;但是當我放大時,圖表變爲空白?Highcharts圖表變爲空白zoomType:'x'區域範圍變焦?

以下是圖表HTML:

<div class="content" id="content"></div> 

以下是圖表的Javascript代碼:

$(function() { 
     $('#content').highcharts({ 
      chart: { 
       zoomType: 'x', 
       backgroundColor:'transparent' 
      }, 
      credits: { 
       enabled: false 
      }, 
      title: { 
       text: 'Players Online' 
      }, 
      subtitle: { 
       text: document.ontouchstart === undefined ? 
        'Click and drag in the plot area to zoom in' : 
        'Drag your finger over the plot to zoom in' 
      }, 
      xAxis: { 
       type: 'datetime', 
       maxZoom: 3600000, // 1 hour 
       title: { 
        text: null 
       } 
      }, 
      yAxis: { 
       title: { 
        text: 'Players Online' 
       } 
      }, 
      tooltip: { 
       enabled: false 
      }, 
      legend: { 
       enabled: false 
      }, 
      plotOptions: { 
       area: { 
        allowPointSelect: false, 
        fillColor: { 
         linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1}, 
         stops: [ 
          [0, Highcharts.getOptions().colors[0]], 
          [1, Highcharts.Color(Highcharts.getOptions().colors[0]).setOpacity(0).get('rgba')] 
         ] 
        }, 
        lineWidth: 1, 
        marker: { 
         enabled: false 
        }, 
        shadow: false, 
        states: { 
         hover: { 
          lineWidth: 1, 
          enabled: false 
         } 
        } 
       } 
      }, 
      series: [{ 
       type: 'area', 
       data: [<?php echo join($data, ',') ?>] 
       //This is displayed correctly in Javascript, so the issue isn't in my PHP 
      }] 
     }); 
    }); 

我在這裏幹什麼一些愚蠢的事?似乎無法找到圖表空白的原因。 :/

+1

可能重複http://stackoverflow.com/questions/11231398/highcharts-not-displaying-data-at-some-zoom-levels – svillamayor

+0

你是否按x升序排列數據?你可以附加你的數據對象嗎? –

+0

@ SebastianBochan我將圖表所在的網站鏈接在一起,因此您可以在其中查看數據。 – Simo389

回答

4

我找出了通過Highcharts API文檔搜索後出現的問題。

有所有圖表類型,我所知道所謂「cropThreshold」的屬性,這裏是解釋什麼,這是在細節的鏈接Highcharts API: http://api.highcharts.com/highcharts#plotOptions.area.cropThreshold

但在摘要;如果您顯示的點數超過300點(cropThreshold默認爲300),則在放大時,您的圖表將變爲空白。爲了解決這個問題,你可以添加以下到您的圖表配置:

area: { 
      cropThreshold: 500 <- //Vary this. I display 500 points on my chart in 
           //total and so a value of 500 allows zooming to 
           //work at all levels. This will vary for you 
           //depending on how many points you plot. 
     } 
+0

我剛剛在API中看到,他們告訴說,如果溢出cropthreshold的點將被裁減到cropThreshold大小,默認爲300,那麼圖表怎麼能變成空白......? –

+0

@ user2634485這也是我對API的理解。但是,當我沒有將cropThreshold設置爲高於我擁有的點數時,圖表在放大時會變得空白。可能是某個特定配置的錯誤,或者是我的錯誤。我沒有經歷過,所以我猜這是一個錯誤。 – Simo389

+0

這對我有用。我有同樣的問題。謝謝。 –