Chart with Datapoints and Title from CSV File - CanvasJS JavaScript Charts

Chart with Datapoints and Title from CSV File - CanvasJS JavaScript Charts

by canvasjs

HTML

<script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
<br/><!-- Just so that JSFiddle's Result label doesn't overlap the Chart -->
<div id="chartContainer" style="height: 360px; width: 100%;"></div>

JavaScript

function getChartOptionsFromCSV(csv) {
  var dataPoints = csvLines = points = [];
  var chartOptions;
  var country;

  csvLines = csv.split(/[\r?\n|\r|\n]+/);

  var index = 9; // change index from 1 to 9 
  country = csvLines[0].split(",")[index];
  for (var i = 1; i < csvLines.length; i++){
    if (csvLines[i].length > 0) {
      points = csvLines[i].split(",");
      dataPoints.push({ 
        x: parseFloat(points[0]), 
        y: parseFloat(points[index]) 		
      });
    }
  }

  chartOptions = {
    title: {
      text: "GHI Score Trend for" + " " + country
    },
    exportEnabled: true,
    exportFileName: country,
    data: [{
      type: "line",
      dataPoints: dataPoints
    }]
  };
  return chartOptions;
}

$.get("https://codepen.io/anon/pen/JarQqB.js", function(responseData) {
  var options = getChartOptionsFromCSV(responseData);
  var chart = new CanvasJS.Chart("chartContainer", options);
  chart.render();
});