Align axisY of multiple charts in a straight line - CanvasJS JavaScript Charts
Align axisY of multiple charts in a straight line - CanvasJS JavaScript Charts
by canvasjs
HTML
<script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
<div id="chartContainer1" style="height: 300px; width: 100%; position: relative;"></div> <br/>
<div id="chartContainer2" style="height: 300px; width: 100%; position: relative;"></div>
JavaScript
var chart1 = new CanvasJS.Chart("chartContainer1", {
title:{
text: "Chart 1 "
},
legend: {
horizontalAlign: "left",
verticalAlign: "center"
},
axisY2: {
prefix: "Value "
},
data: [
{
type: "column",
showInLegend: true,
legendText: "Legend Text",
axisYType: "secondary",
dataPoints: [
{ x: 10, y: 171 },
{ x: 20, y: 155 },
{ x: 30, y: 150 },
{ x: 40, y: 165 },
{ x: 50, y: 195 },
{ x: 60, y: 168 },
{ x: 70, y: 128 },
{ x: 80, y: 134 },
{ x: 90, y: 114 }
]
}
]
});
var chart2 = new CanvasJS.Chart("chartContainer2", {
title:{
text: "Chart 2"
},
data: [
{
type: "column",
axisYType: "secondary",
dataPoints: [
{ x: 10, y: 71 },
{ x: 20, y: 55 },
{ x: 30, y: 50 },
{ x: 40, y: 65 },
{ x: 50, y: 95 },
{ x: 60, y: 68 },
{ x: 70, y: 28 },
{ x: 80, y: 34 },
{ x: 90, y: 14 }
]
}
]
});
chart1.render();
chart2.render();
chart2.axisY2[0].set("margin", chart2.axisX[0].bounds.x2 - chart1.axisX[0].bounds.x2);