Object For Chart

by Hifni Nazeer

HTML

<button id="btn">
  Process
</button>
<div id="output">

</div>

JavaScript

$(document).ready(function() {
  var dataset = {
    "labels": ["13/14",
      "14/15",
      "15/16",
      "16/17"
    ],
    "datasets": [{
      "label": "Local Institutional",
      "fillColor": "#8a56e2",
      "highlightFill": null,
      "highlightStroke": null,
      "strokeColor": null,
      "data": ["34.06",
        "47.05",
        "36.4",
        "3.4"
      ]
    }, {
      "label": "Foreign",
      "fillColor": "#e25667",
      "highlightFill": null,
      "highlightStroke": null,
      "strokeColor": null,
      "data": ["69.33",
        "94.87",
        "67.44",
        "9.91"
      ]
    }, {
      "label": "Retail",
      "fillColor": "#ade256",
      "highlightFill": null,
      "highlightStroke": null,
      "strokeColor": null,
      "data": ["42.29",
        "59.28",
        "35.64",
        "4.71"
      ]
    }, {
      "label": "HNI",
      "fillColor": "#56e2d0",
      "highlightFill": null,
      "highlightStroke": null,
      "strokeColor": null,
      "data": ["49.62",
        "84.55",
        "37.19",
        "11.46"
      ]
    }]
  };

  $('#btn').click(function() {

    var arrForChartLabels = [];
    var objChartData = {
      "label": "",
      "data": []
    };

    for (var i = 0; i < dataset.labels.length; i++) {
			var labelVal = dataset.labels[i];
      console.log(labelVal);
      
      var arrForChartData = [];
      for (var j = 0; j < dataset.datasets.length; j++) {
        var dataVal = dataset.datasets[j].data[i];
        console.log(dataVal);
        arrForChartData.push(dataVal);
      }

      with(objChartData) {
        label=labelVal;
        data=arrForChartData;
      }

      arrForChartLabels.push(objChartData);
      
      //reinitialize the object
      objChartData = {
        "label": "",
        "data": []
      };
    }

    alert(arrForChartLabels.length);
    $('#output').append(JSON.stringify(arrForChartLabels) + '<br>');

  });

});