You must be logged in to post your query.
Home › Forums › Chart Support › Chart via JSON
Hi all,
just started using CanvasJS to include graphics in a HTML page. The data for these charts is fetched via PHP from a SQL Database. This data is composed of 2 columns (i.e. species (source) and number of elements per species(sourcecount) ) and the objective is to do a graph x=species name / y= number of elements per species. The type of specie can change from time to time so I need to fetch the data from the DB every time the graph is made.
At this moment I got an JSON result for my query that looks like this:
[{“source”:””,”sourcecount”:1},{“source”:”Aquifex aeolicus”,”sourcecount”:3},{“source”:”Aquifex aeolicus VF5″,”sourcecount”:3},{“source”:”Bos taurus”,”sourcecount”:3},{“source”:”Corynebacterium glutamicum”,”sourcecount”:2},{“source”:”Escherichia coli”,”sourcecount”:8},{“source”:”Escherichia coli BL21(DE3)”,”sourcecount”:3},{“source”:”Escherichia coli DH1″,”sourcecount”:1},{“source”:”Escherichia coli K-12″,”sourcecount”:7},{“source”:”Escherichia coli O157:H7″,”sourcecount”:2},{“source”:”Homo sapiens”,”sourcecount”:1},{“source”:”Methanocaldococcus jannaschii”,”sourcecount”:1},{“source”:”Methanocaldococcus jannaschii DSM 2661″,”sourcecount”:1},{“source”:”Microbacterium liquefaciens”,”sourcecount”:2},{“source”:”Mus musculus”,”sourcecount”:1},{“source”:”Neisseria meningitidis”,”sourcecount”:1},{“source”:”Proteus mirabilis”,”sourcecount”:1},{“source”:”Pyrococcus horikoshii”,”sourcecount”:2},{“source”:”Pyrococcus horikoshii OT3″,”sourcecount”:2},{“source”:”Salmonella enterica subsp. enterica serovar Typhimurium”,”sourcecount”:1},{“source”:”Shewanella oneidensis MR-1″,”sourcecount”:1},{“source”:”Squalus acanthias”,”sourcecount”:1},{“source”:”Sus scrofa”,”sourcecount”:1},{“source”:”Thermotoga maritima”,”sourcecount”:1},{“source”:”Thermus thermophilus HB8″,”sourcecount”:2},{“source”:”Vibrio cholerae”,”sourcecount”:2},{“source”:”Vibrio parahaemolyticus”,”sourcecount”:2}]
My question at the moment is how to create one chart with source in the x (showing the names of the species) and the sourcecount in the y.
Best Regards
Afonso
[Update]
Now we have a Tutorial on Creating Charts from JSON Data in our documentation.
Hello,
You need to create a HTML page that does AJAX request and fetch the data. After getting the data, it will render a Chart. Please refer the below mentioned code :
<html>
<head>
<script type="text/javascript" src="https://canvasjs.com/assets/script/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="https://cdn.canvasjs.com/canvasjs.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
var dataPoints = [];
var chart = new CanvasJS.Chart("chartContainer",
{
title: {
text: "Basic Column Chart"
},
data: [
{
dataPoints: []
}]
});
// Ajax request for getting JSON data
//Replace data.php with your JSON API's url
$.getJSON("data.php", function (data) {
for (var i = 0; i < data.length; i++) {
dataPoints.push({ label: data[i].source, y: data[i].sourcecount });
}
chart.options.data[0].dataPoints = dataPoints;
chart.render();
});
});
</script>
</head>
<body>
<div id="chartContainer" style="width: 50%; height: 300px;"></div>
</body>
</html>
You must be logged in to reply to this topic.