JSFiddle - React, Tailwind, and code Playground

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>
<div id="chartContainer1" style="height: 360px; width: 100%;"></div>

JavaScript

var chart = new CanvasJS.Chart("chartContainer", {
  theme: "theme2", //theme1
  title: {
    text: "Position Image over Chart"
  },
  data: [{
    type: "column",
    dataPoints: [{
        label: "apple",
        y: 14
      },
      {
        label: "orange",
        y: 20
      },
      {
        label: "banana",
        y: 25
      },
      {
        label: "mango",
        y: 30
      }
    ]
  }]
});
chart.render();


var chart1 = new CanvasJS.Chart("chartContainer1", {
  theme: "theme2", //theme1
  title: {
    text: "Position Image over Chart"
  },
  data: [{
    type: "column",
    dataPoints: [{
        label: "apple",
        y: 14
      },
      {
        label: "orange",
        y: 20
      },
      {
        label: "banana",
        y: 25
      },
      {
        label: "mango",
        y: 30
      }
    ]
  }]
});
chart1.render();



var images = [];
var fruits = [];

images.push({
  url: "https://i.imgur.com/VXbpsfx.jpg"
});
images.push({
  url: "https://i.imgur.com/mUGGAVd.jpg"
});
images.push({
  url: "https://i.imgur.com/XhQZyYI.jpg"
});
images.push({
  url: "https://i.imgur.com/mIQnOdQ.jpg"
});

//addImages(chart1);

addImages(chart);

function addImages(chart) {
  for (var i = 0; i < chart.data[0].dataPoints.length; i++) {
    var label = chart.data[0].dataPoints[i].label;

    if (label) {
      fruits.push($("<img>").attr("src", images[i].url)
        .attr("class", label)
        .css("display", "none")
        .appendTo($("#chartContainer>.canvasjs-chart-container"))
      );
    }

    positionImage(fruits[i], i);
  }
}

function positionImage(fruit, index) {
  var imageBottom = chart.axisX[0].bounds.y1;
  var imageCenter = chart.axisX[0].convertValueToPixel(chart.data[0].dataPoints[index].x);

  fruit.width(chart.dataPointWidth * .5);
  fruit.height(chart.dataPointWidth * .42);
  fruit.css({
    "position": "absolute",
    "display": "block",
    "top": imageBottom - 270,
    "left": imageCenter - fruit.width() / 2
  });
 ...