forked from d3/d3
-
Notifications
You must be signed in to change notification settings - Fork 0
/
d3.csv.min.js
3 lines (3 loc) · 1.04 KB
/
d3.csv.min.js
1
2
3
(function(){function n(a){return a.map(o).join(",")}function o(a){return/[",\n]/.test(a)?'"'+a.replace(/\"/g,'""')+'"':a}d3.csv=function(a,c){d3.text(a,"text/csv",function(d){c(d&&d3.csv.parse(d))})};d3.csv.parse=function(a){var c;return d3.csv.parseRows(a,function(d,k){if(k){for(var f={},g=-1,e=c.length;++g<e;)f[c[g]]=d[g];return f}else{c=d;return null}})};d3.csv.parseRows=function(a,c){function d(){if(e.lastIndex==a.length)return f;if(h){h=false;return k}var i=e.lastIndex;if(a.charCodeAt(i)==34){for(var b=
i;b++<a.length;)if(a.charCodeAt(b)==34){if(a.charCodeAt(b+1)!=34)break;b++}e.lastIndex=b+2;var m=a.charCodeAt(b+1);if(m==13){h=true;a.charCodeAt(b+2)==10&&e.lastIndex++}else if(m==10)h=true;return a.substring(i+1,b).replace(/""/g,'"')}if(b=e.exec(a)){h=b[0].charCodeAt(0)!=44;return a.substring(i,b.index)}e.lastIndex=a.length;return a.substring(i)}for(var k={},f={},g=[],e=/\r\n|[,\r\n]/g,p=0,j,h;(j=d())!==f;){for(var l=[];j!==k&&j!==f;){l.push(j);j=d()}c&&!(l=c(l,p++))||g.push(l)}return g};d3.csv.format=
function(a){return a.map(n).join("\n")}})();