Skip to content
Snippets Groups Projects
config.js 1.65 KiB
Newer Older
  • Learn to ignore specific revisions
  • tlansey's avatar
    tlansey committed
    import moment from 'moment'
    //Load in data
    import ConnectionData from '../../Data/Connections.csv';
    
    //Process Data
    var dates = [];
    var totalConnectionsPerMonth = [];
    
    function csvJSON(csv){
    
      var lines=csv.split("\n");
    
      var result = [];
    
      // NOTE: If your columns contain commas in their values, you'll need
      // to deal with those before doing the next step 
      // (you might convert them to &&& or something, then covert them back later)
      // jsfiddle showing the issue https://jsfiddle.net/
      var headers=lines[0].split(",");
    
      for(var i=1;i<lines.length;i++){
    
          var obj = {};
          var currentline=lines[i].split(",");
    
          for(var j=0;j<headers.length;j++){
              obj[headers[j]] = currentline[j];
          }
    
          result.push(obj);
    
      }
    
      //return result; //JavaScript object
      return JSON.stringify(result); //JSON
    }
    
    csvJSON(ConnectionData).forEach(function(connection) {
        let stri = (connection.endTime).split(' ');
    
        if (stri[0] in totalSongsPerDay)
        {
            totalSongsPerDay[stri[0]] += 1;
        }
        else
        {
            totalSongsPerDay[stri[0]] = 1;
        }
        
    });
    console.log(totalSongsPerDay);
    dates = Object.keys(totalSongsPerDay);
    var totalSongs = Object.values(totalSongsPerDay);
    
    dates.reverse();
    totalSongs.reverse();
    
    const data = {
        labels: dates,
        datasets: [
          {
            label: '# of Songs',
            lineTension: 0.1,
            backgroundColor: 'rgba(252,48,120,0.2)',
            borderColor: 'rgba(252,48,120,1)',
            borderCapStyle: 'butt',
            borderDash: [],
            borderDashOffset: 0.0,
            borderJoinStyle: 'miter',
            pointHitRadius: 10,
            data: totalSongs,
          }
        ],
      };
      
      export { data };