docs: function lineChart (arr, valueFieldName, labelFieldName, options) {
    if (arr.length > 120) {
      arr = arr.slice(0,120);
    }
  
    var geckoboardJSON = {};
    var item = []; // this stores the values
    var settings = {};
    var axisx = [];
    var axisy = [];
  
    if (options) {
      if (options.color) {
        color = options.color;
        settings.color = color;
      }
    }
  
    for (var i = 0; i < arr.length; i++) {
      item.push(arr[i][valueFieldName]);
      axisx.push(arr[i][labelFieldName]);
    }
  
    if (options && options.usingDates) {
      for (var j = 0; j < axisx.length; j++) {
        var d = new Date(axisx[j]);
        var mm = (d.getMonth()+1).toString(); // getMonth() is zero-based
        var dd  = d.getDate().toString();
        axisx[j] =  (mm[1]?mm:"0"+mm[0]) + '-' + (dd[1]?dd:"0"+dd[0]); // padding
      }
    }
  
    var lowest;
    var highest;
  
    for (var i = 0; i < item.length; i++) {
      var thisItem = item[i];
      if (!lowest || (thisItem < lowest)) {
        lowest = thisItem;
      }
      if (!highest || (thisItem > highest)) {
        highest = thisItem;
      }
    }
  
    lowest = Math.round(lowest * 100) / 100;
    highest = Math.round(highest * 100) / 100;
  
    axisy = [lowest, highest];
  
    settings.axisx = axisx;
    settings.axisy = axisy;
    geckoboardJSON.item = item;
    geckoboardJSON.settings = settings;
  
    return geckoboardJSON;
  }