JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
<div id="chartContainer" style="height: 300px; width: 100%;"></div>
JavaScript
window.onload = function () {
var chart = new CanvasJS.Chart("chartContainer",
{
title:{
text: "Multi-Series Bar Chart"
},
data: [
{
type: "bar",
dataPoints: [
{ label: "apple", y: 10 },
{ label: "orange", y: 15 },
{ label: "banana", y: 25 },
{ label: "mango", y: 30 },
{ label: "grape", y: 28 }
]
},
{
type: "bar",
dataPoints: [
{ label: "orange", y: 20 },
{ label: "apple", y: 45 },
{ label: "banana", y: 15 },
{ label: "mango", y: 35 },
{ label: "grape", y: 88 }
]
}
]
});
chart.options.data.forEach(function(element) {
element.dataPoints.sort(compareDataPoint);
});
chart.render();
function compareDataPoint(dataPoint1, dataPoint2) {
// instead of label you can also use dataPoint.x or dataPoint.y depends on you requirment
if (dataPoint1.label < dataPoint2.label){return -1}
if ( dataPoint1.label > dataPoint2.label){return 1}
return 0
}
}