2014-07-08 16 views
0

我是Jquery的初學者..我有一個高圖。哪些數據在Xaxis中顯示一列。HighChart圖在X軸上對齊錯誤..不能在JSFiddle上重現

我想重現我在的jsfiddle ..我的圖表幫助了從beloe圖

Refered Graph

這是我的代碼:

$(function() { 
var highOptions = { 

     chart: { 
      type: 'line', 
      renderTo: 'container2', 
      zoomType: 'x', 
      marginTop: 100 

     }, 

     title: { 
      text: 'Score' 
     }, 

     subtitle: { 
      text: ' ' 
     }, 

     xAxis: { 
      title: { 
       text: 'XXX' 
      }, 
      categories: [], 
      labels: { 
       rotation: 45, 
       step: 1, 
       y: 30 
      } 
     }, 

     yAxis: [{ // left y axis 
      title: { 
       text: 'XXX' 
      }, 
      min: 0, 
      max: 9, 
      plotLines: [{ 
       value: 7.5, 
       color: '#ff0000', 
       width: 2, 
       zIndex: 4, 
       label: { text: 'XXX' } 
      }] 
     }], 

     plotOptions: { 
      column: { 
       dataLabels: { 
        enabled: true, 
        formatter: function() { 
         return Highcharts.numberFormat(this.y, 1); 
        } 
       } 
      } 
     }, 
     legend: { 
      align: 'left', 
      verticalAlign: 'top', 
      y: 20, 
      floating: true, 
      borderWidth: 0 
     }, 

     tooltip: { 
      shared: true, 
      crosshairs: true 
     }, 
     series: [] 
    }; 

     var unibiki = [] ; 
     unibiki.push("Fin"); 
     unibiki.push("Chi"); 
     unibiki.push("G_F"); 
     unibiki.push("G_I"); 
     unibiki.push("G_F"); 
     unibiki.push("F_F"); 
     unibiki.push("l_G"); 
     unibiki.push("F_Fi"); 
     unibiki.push("l_G"); 
     unibiki.push("F_I"); 
     unibiki.push("I_I"); 

     var soft =[]; 

     var soft1=[]; 

     soft1.A="XXL" 
     soft1.City="XXlu" 
     soft1.C="XXnd" 
     soft1.E0="0"  
     soft1.E1="2"  
     soft1.E2="1"  
     soft1.E3="2"  
     soft1.E4="1"  
     soft1.E5="0"  
     soft1.E6="0"  
     soft1.E7="0"  
     soft1.E8="0"  
     soft1.E9="0"  
     soft1.E10="0" 
     soft1.XXScore="4" 
     soft1.XXScore="1" 
     soft1.Median="3"  
     soft1.NoOfRespondents="6" 
     soft1.OldCountry   
     soft1.OldSWVer  
     soft1.PercentageResponses="75" 
     soft1.Program="XXS" 
     soft1.SurveyDate="XX06" 
     soft1.Rd=2.33 
     soft1.A="0.1.0" 
     soft1.UserBase="8" 

     soft.push(soft1); 

    highOptions.xAxis.categories = [0.1.0,0.2.0,0.3,0.4,0.5,0.6,0.7,0.8]; 

    highOptions.subtitle.text = "XXX:"; 
    chart = new Highcharts.Chart(highOptions); 

for (var x = 0; x < unibiki.length; x++) { 

     newLP = []; 

     var aName = unibiki[x]; 
     for (i = 0; i < soft.length; i++) { 
      if (unibiki[x] == soft[i].A + "_" + soft[i].C) { 
       newLP.push([soft[i].A, parseFloat(soft[i].Rd)]); 

      } 
     } 

     chart.addSeries({ 
      name: aName, 
      data: newLP 
     }, false); 
    } 
     }); 

,這是我的圖表

My Graph JSfiddle

我的數組加載正常我運行JSHint ..它說一些變量沒有被定義..我做了..still圖不可見。 需要一些建議。 任何建議將有所幫助

+0

刪除addSeries中的一個假標誌,然後你會有一條紅線。但是你的系列是空的(數據)。 –

+0

好吧,先生..但chart.addSeries在我的現場示例中添加了數據。所以我認爲系列null不會影響 – user3767164

回答

1

它說在控制檯中的「意外數字」。將前兩個數字固定在以下行中:

highOptions.xAxis.categories = [0.1.0,0.2.0,0.3,0.4,0.5,0.6,0.7,0.8];

+0

好。其實我不能發佈公司的數據..這就是爲什麼我改變這.. – user3767164

+0

我已經改變了代碼...這是新的jsfiddle ..http://jsfiddle.net/u9xES/542/ ..我可以看到控制檯窗口在jsfille中...請建議 – user3767164

+0

谷歌,你會看到如何在你正在使用的瀏覽器中打開開發者控制檯。 –

0

問題是

highOptions.xAxis.categories = [0.1.0,0.2.0,0.3,0.4,0.5,0.6,0.7,0.8]; 

更新成

highOptions.xAxis.categories = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8]; 

JSFiddle

+0

謝謝先生..我改變了這一點。標題即將到來..即時軸和數據不會來..什麼仍然缺少這是我的新jsfiddle http://jsfiddle.net/u9xES/543/... – user3767164

0

與您的數據修復問題後,不要忘了叫chart.redraw(),加入後編:http://jsfiddle.net/u9xES/546/

for (var x = 0; x < unibiki.length; x++) { 

    newLP = []; 

    var aName = unibiki[x]; 
    for (i = 0; i < soft.length; i++) { 
     if (unibiki[x] == soft[i].A + "_" + soft[i].C) { 
      newLP.push([soft[i].A, parseFloat(soft[i].Rd)]); 

     } 
    } 

    chart.addSeries({ 
     name: aName, 
     data: newLP 
    }, false); 
} 
chart.redraw(); // redraw chart 
+0

謝謝閣下這一點 – user3767164