2015-08-09 46 views
0

我需要使用字符串而不是整數來在Highcharts上創建xAxys。使用字符串而不是整數創建xAxys - Highcharts

任何人都已經試圖做到這一點,或可以幫助我做到這一點?

我的模擬數據被這個圖表上使用的將是:

var weekNoArray = [32, 32, 32, 32, 32, 32, 33, 33, 33, 33, 33, 33, 34, 34, 34, 34, 34, 34], 
     retailerNameArray = ['a', 'b', 'c', 'd', 'e', 'f', 'a', 'b', 'c', 'd', 'e', 'f', 'a', 'b', 'c', 'd', 'e', 'f'], 
     clicksArray = [43, 48, 62, 63, 43, 39, 27, 30, 43, 49, 34, 24, 47, 45, 59, 64, 48, 47], 
     series = []; 

,我使用壽產生一系列的代碼:

series = generateData(weekNoArray, retailerNameArray, clicksArray); 

    function generateData(cats, names, points) { 
     var ret = {}, 
      ps = [], 
      series = [], 
      len = cats.length; 

     //concat to get points 
     for (var i = 0; i < len; i++) { 
      ps[i] = { 
       x: cats[i], 
       y: points[i], 
       n: names[i] 
      }; 
     } 
     names = []; 
     //generate series and split points 
     for (i = 0; i < len; i++) { 
      var p = ps[i], 
       sIndex = $.inArray(p.n, names); 

      if (sIndex < 0) { 
       sIndex = names.push(p.n) - 1; 
       series.push({ 
        name: p.n, 
        data: [] 
       }); 
      } 
      series[sIndex].data.push(p); 
     } 
     return series; 
    } 

的Highcharts創建圖表代碼:

$('#container').highcharts({ 
     title: { 
      text: 'Retailer Clicks', 
      x: -20 //center 
     }, 
     subtitle: { 
      text: 'Date', 
      x: -20 
     }, 
     yAxis: { 
      title: { 
       text: 'Clicks' 
      }, 
      plotLines: [{ 
       value: 0, 
       width: 1, 
       color: '#808080' 
      }] 
     }, 
     xAxis: { 
      allowDecimals: false 
     }, 
     tooltip: { 
      valueSuffix: '°C' 
     }, 
     legend: { 
      layout: 'vertical', 
      align: 'right', 
      verticalAlign: 'middle', 
      borderWidth: 0 
     }, 
     series: series 
    }); 

運行例如:http://jsfiddle.net/RUZb2/1/

回答

1

在此代碼的情況下,weekNoArray用於設置x軸的值和x軸的linear類型。現在,如果你想使用category型軸你至少應該:http://jsfiddle.net/rt4pthvn/

+0

但我想:

  • 變化weekNoArray值從0
  • 組類別爲x軸

實例啓動使用字符串值設置x的值。 就像你做的那樣,x軸的驗證繼續使用整數值,你知道我該如何使用字符串值嗎? 謝謝! – coderade

+0

@ValdeciGomes沒有辦法將x設置爲字符串 - 軸必須有數字。如果您使用的是分類軸,則會自動添加標籤的編號,但仍然使用數字。其他方法是設置沒有x值的數據 - 他們將自動分配x值。 X值仍然是數字。例如:http://jsfiddle.net/rt4pthvn/1/ –

+0

謝謝Kacper!但是,在您的示例中,零售商名稱陣列的值始終爲 出現在第一列teste1中,您知道如何才能使此變量的位置正確? 查看此示例:http://jsfiddle.net/rt4pthvn/2/,值「GRUPO 4」是retailerNameArray的最後一個值,它出現在最後一列中,但它出現在第一列中,你知道如何解決這個問題嗎? – coderade

相關問題