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>

JavaScript

var points = [
  { x1: 35, x2: 75, y: 75}, //line 1
  { x1: 35, x2: 75, y: 35}  //line 2
];

var valuesInPixel = [
  { x1: null, x2: null, y: null}, //line 1
  { x1: null, x2: null, y: null}  //line 2
];



var chart = new CanvasJS.Chart("chartContainer",{   
  zoomEnabled: true,
  rangeChanged: drawHorizontalLines,
  data: [
    {
      type: "line",
      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 }
      ]
    }					
  ]
});

chart.render();
calculateValuesInPixel();
drawHorizontalLines();

function calculateValuesInPixel(){
  for(var i = 0; i < points.length; i++){
    valuesInPixel[i].x1 = chart.axisX[0].convertValueToPixel(points[i].x1);
    valuesInPixel[i].x2 = chart.axisX[0].convertValueToPixel(points[i].x2);
    valuesInPixel[i].y = chart.axisY[0].convertValueToPixel(points[i].y);
  }
}

function drawHorizontalLines(){
  for(var i = 0; i < valuesInPixel.length; i++){
    chart.ctx.beginPath();
    chart.ctx.moveTo(valuesInPixel[i].x1, valuesInPixel[i].y);
    chart.ctx.lineTo(valuesInPixel[i].x2, valuesInPixel[i].y);
    chart.ctx.strokeStyle = "#FF0000";

    chart.ctx.stroke();
  }
}

$(window).resize(function() {
  drawHorizontalLines();
});