2013-06-04 95 views
0

有人請幫助我修改HighCharts Angular Gauge演示代碼以從逗號分隔值文件加載數據嗎?HighCharts JS Ajax Data Guage

逗號分隔值列應該是可指定的。即:數據[0],數據[1],[2]

$(function() { 

$('#container').highcharts({ 

    chart: { 
     type: 'gauge', 
     plotBackgroundColor: null, 
     plotBackgroundImage: null, 
     plotBorderWidth: 0, 
     plotShadow: false 
    }, 

    title: { 
     text: 'Speedometer' 
    }, 

    pane: { 
     startAngle: -150, 
     endAngle: 150, 
     background: [{ 
      backgroundColor: { 
       linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 }, 
       stops: [ 
        [0, '#FFF'], 
        [1, '#333'] 
       ] 
      }, 
      borderWidth: 0, 
      outerRadius: '109%' 
     }, { 
      backgroundColor: { 
       linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 }, 
       stops: [ 
        [0, '#333'], 
        [1, '#FFF'] 
       ] 
      }, 
      borderWidth: 1, 
      outerRadius: '107%' 
     }, { 
      // default background 
     }, { 
      backgroundColor: '#DDD', 
      borderWidth: 0, 
      outerRadius: '105%', 
      innerRadius: '103%' 
     }] 
    }, 

    // the value axis 
    yAxis: { 
     min: 0, 
     max: 200, 

     minorTickInterval: 'auto', 
     minorTickWidth: 1, 
     minorTickLength: 10, 
     minorTickPosition: 'inside', 
     minorTickColor: '#666', 

     tickPixelInterval: 30, 
     tickWidth: 2, 
     tickPosition: 'inside', 
     tickLength: 10, 
     tickColor: '#666', 
     labels: { 
      step: 2, 
      rotation: 'auto' 
     }, 
     title: { 
      text: 'km/h' 
     }, 
     plotBands: [{ 
      from: 0, 
      to: 120, 
      color: '#55BF3B' // green 
     }, { 
      from: 120, 
      to: 160, 
      color: '#DDDF0D' // yellow 
     }, { 
      from: 160, 
      to: 200, 
      color: '#DF5353' // red 
     }]   
    }, 

    series: [{ 
     name: 'Speed', 
     data: [80], 
     tooltip: { 
      valueSuffix: ' km/h' 
     } 
    }] 

}, 
// Add some life 
function (chart) { 
    if (!chart.renderer.forExport) { 
     setInterval(function() { 
      var point = chart.series[0].points[0], 
       newVal, 
       inc = Math.round((Math.random() - 0.5) * 20); 

      newVal = point.y + inc; 
      if (newVal < 0 || newVal > 200) { 
       newVal = point.y - inc; 
      } 

      point.update(newVal); 

     }, 3000); 
    } 
}); 
}); 

逗號分隔值的數據的例子被加載到Highcharts演示數據 - 的Ajax加載的數據,可點擊的點。

$(function() { 

// Register a parser for the American date format used by Google 
Highcharts.Data.prototype.dateFormats['m/d/Y'] = { 
    regex: '^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2})$', 
    parser: function (match) { 
     return Date.UTC(+('20' + match[3]), match[1] - 1, +match[2]); 
    } 
}; 

// Get the CSV and create the chart 
$.get('/samples/highcharts/demo/line-ajax/analytics.csv', function (csv) { 

    $('#container').highcharts({ 

     data: { 
      csv: csv 
     }, 

     title: { 
      text: 'Daily visits at www.highcharts.com' 
     }, 

     subtitle: { 
      text: 'Source: Google Analytics' 
     }, 

     xAxis: { 
      type: 'datetime', 
      tickInterval: 7 * 24 * 3600 * 1000, // one week 
      tickWidth: 0, 
      gridLineWidth: 1, 
      labels: { 
       align: 'left', 
       x: 3, 
       y: -3 
      } 
     }, 

     yAxis: [{ // left y axis 
      title: { 
       text: null 
      }, 
      labels: { 
       align: 'left', 
       x: 3, 
       y: 16, 
       formatter: function() { 
        return Highcharts.numberFormat(this.value, 0); 
       } 
      }, 
      showFirstLabel: false 
     }, { // right y axis 
      linkedTo: 0, 
      gridLineWidth: 0, 
      opposite: true, 
      title: { 
       text: null 
      }, 
      labels: { 
       align: 'right', 
       x: -3, 
       y: 16, 
       formatter: function() { 
        return Highcharts.numberFormat(this.value, 0); 
       } 
      }, 
      showFirstLabel: false 
     }], 

     legend: { 
      align: 'left', 
      verticalAlign: 'top', 
      y: 20, 
      floating: true, 
      borderWidth: 0 
     }, 

     tooltip: { 
      shared: true, 
      crosshairs: true 
     }, 

     plotOptions: { 
      series: { 
       cursor: 'pointer', 
       point: { 
        events: { 
         click: function() { 
          hs.htmlExpand(null, { 
           pageOrigin: { 
            x: this.pageX, 
            y: this.pageY 
           }, 
           headingText: this.series.name, 
           maincontentText: Highcharts.dateFormat('%A, %b %e, %Y', this.x) +':<br/> '+ 
            this.y +' visits', 
           width: 200 
          }); 
         } 
        } 
       }, 
       marker: { 
        lineWidth: 1 
       } 
      } 
     }, 

     series: [{ 
      name: 'All visits', 
      lineWidth: 4, 
      marker: { 
       radius: 4 
      } 
     }, { 
      name: 'New visitors' 
     }] 
    }); 
}); 

}); 

非常感謝,

回答