Customizing Zoom and Pan button- CanvasJS JavaScript Charts
Customizing Zoom and Pan button- 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>
CSS
.canvasjs-chart-toolbar {
border: none !important;
}
.myButton {
background-color: #599bb3 !important;
width: auto !important;
-moz-border-radius: 28px;
-webkit-border-radius: 28px;
border-radius: 28px;
border: 1px solid #000 !important;
cursor: pointer;
color: #ffffff !important;
font-family: Arial;
font-size: 17px;
margin-left: 3px !important;
text-decoration: none !important;
text-shadow: 0px 1px 0px #2f6627;
}
.myButton:hover {
background-color: #476e9e !important;
}
.canvasjs-chart-toolbar .myButton img {
display: none;
}
JavaScript
var dataPoints = [];
var y = 0;
for (var i = 0; i < 100; i += 1) {
y += (Math.random() * 10 - 5);
dataPoints.push({
x: i - 100 / 2,
y: y
});
}
var chart = new CanvasJS.Chart("chartContainer",
{
title: {
text: "Customized Zoom and Pan Buttons"
},
zoomEnabled:true,
data: [
{
type: "spline",
dataPoints: dataPoints
}
]
});
chart.render();
$('.canvasjs-chart-toolbar button:eq(0)').append('<span>Pan</span>');
$('.canvasjs-chart-toolbar button:eq(1)').append('<span>Restore</span>');
$('.canvasjs-chart-toolbar button:eq(0)').addClass('myButton').click(function() {
if($(this).hasClass('clicked')) {
$(this).append('<span>Pan</span>').removeClass('clicked');
} else {
$(this).append('<span>Zoom</span>').addClass('clicked');
}
});
$('.canvasjs-chart-toolbar button:eq(1)').addClass('myButton').click(function() {
if($('.canvasjs-chart-toolbar button:eq(0)').children('span').length != 0)
$('.canvasjs-chart-toolbar button:eq(0)').removeClass('clicked').children('span').text('Pan');
else
$('.canvasjs-chart-toolbar button:eq(0)').append('<span>Pan</span>').removeClass('clicked');
});