Candlestick Chart from CSV Data - CanvasJS JavaScript Charts
Candlestick Chart from CSV Data - 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
var dataPoints = [];
function getDataPointsFromCSV(csv) {
var dataPoints = csvLines = points = [];
csvLines = csv.split(/[\r?\n|\r|\n]+/);
for (var i = 0; i < csvLines.length; i++)
if (csvLines[i].length > 0) {
points = csvLines[i].split(",");
dataPoints.push({
x: parseFloat(points[1]),
y: [parseFloat(points[3]), 10, parseFloat(points[4]), 0]
});
}
return dataPoints;
}
//Sample CSV has been stored in https://codepen.io/vishwas/pen/wJQmmP.js
$.get("https://codepen.io/vishwas/pen/wJQmmP.js", function(data) {
var chart = new CanvasJS.Chart("chartContainer", {
title: {
text: "Candlestick Chart from CSV",
},
data: [{
type: "candlestick",
dataPoints: getDataPointsFromCSV(data),
backgroundColor: "rgba(153,255,51,0.4)"
}]
});
chart.render();
});