From aa8c41f346d2ff75745f81e77b399e9882b57226 Mon Sep 17 00:00:00 2001 From: yikth Date: Mon, 31 Aug 2020 18:10:26 +0800 Subject: [PATCH] dynamically create 2D array to store csv data --- Day1Exercise/Q2/dataset.csv | 4 +++- Day1Exercise/Q2/scatterPlot.js | 37 +++++++++++++++++++--------------- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/Day1Exercise/Q2/dataset.csv b/Day1Exercise/Q2/dataset.csv index 55cfc52..d999ac4 100644 --- a/Day1Exercise/Q2/dataset.csv +++ b/Day1Exercise/Q2/dataset.csv @@ -3,4 +3,6 @@ x,y 20,20 5,20 7,4 -22,6 \ No newline at end of file +22,6 +11,33 +10,13 \ No newline at end of file diff --git a/Day1Exercise/Q2/scatterPlot.js b/Day1Exercise/Q2/scatterPlot.js index 090df65..f62e8b9 100644 --- a/Day1Exercise/Q2/scatterPlot.js +++ b/Day1Exercise/Q2/scatterPlot.js @@ -1,30 +1,35 @@ function myScatterPlot() { var dataset = [[10, 15], [20, 20], [5, 20], [7, 4], [22, 6]]; console.log("entering..."); - + //debugger; + // for D3.js v5 and above, d3.csv() use promise design pattern const myPromise = d3.csv("./dataset.csv"); - - myPromise.then((data) => { - //debugger; - console.log("callback...") + myPromise.then((data) => { + //debugger; + console.log("callback...") - var i=0; - data.forEach(d => { - d.x = +d.x; - d.y = +d.y; + var i = 0; + var csvDataset = new Array(data.length); + for (var ii = 0; ii < csvDataset.length; ii++) { + csvDataset[ii] = new Array(2); + } // - dataset[i][0] = d.x; - dataset[i][1] = d.y; - i++; - }); + data.forEach(d => { + d.x = +d.x; + d.y = +d.y; + // + csvDataset[i][0] = d.x; + csvDataset[i][1] = d.y; + i++; + }); - // plot to view - plot(dataset); + // plot to view + plot(csvDataset); }) .catch(error => { - alert("File Missing!!!") + alert(`dataset error : ${error.message}`) }); }