JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
<script src="https://getfirebug.com/firebug-lite-debug.js"></script>
<br/><!-- Just so that JSFiddle's Result label doesn't overlap the Chart -->
<div id="chartContainer" style="height: 360px; width: 100%;"></div>
<a href="#" id="btn-download" download="chart.jpg" target="_blank">Get Base64 Image</a>
JavaScript
var chart = new CanvasJS.Chart("chartContainer",
{
title: {
text: "Exporting chart using toDataurl"
},
data: [
{
type: "pie",
showInLegend: true,
legendText: "{indexLabel}",
dataPoints: [
{ y: 4181563, indexLabel: "PlayStation 3" },
{ y: 2175498, indexLabel: "Wii" },
{ y: 3125844, indexLabel: "Xbox 360" },
{ y: 1176121, indexLabel: "Nintendo DS"},
{ y: 1727161, indexLabel: "PSP" },
{ y: 4303364, indexLabel: "Nintendo 3DS"},
{ y: 1717786, indexLabel: "PS Vita"}
]
}
]
});
chart.render();
$("#btn-download").click(function () {
var canvas = $(".canvasjs-chart-canvas").get(0);
var dataURL = canvas.toDataURL('image/jpeg');
console.log(dataURL);
$("#btn-download").attr("href", dataURL);
});