JSFiddle - React, Tailwind, and code Playground

HTML

<html>

  <head>
  </head>

  <body>
    <svg/>
  </body>

</html>

CSS

svg {
  font-family: Sans-Serif, Arial;
}

.line {
  stroke-width: 2;
  fill: none;
}

.axis path {
  stroke: none;
}

.text {
  font-size: 12px;
}

.title-text {
  font-size: 12px;
}

JavaScript

var data = [{
    name: "USA",
    values: [{
        date: "2010-October",
        price: "100"
      },
      {
        date: "2010-November",
        price: "110"
      },
      {
        date: "2010-December",
        price: "145"
      },
      {
        date: "2011-January",
        price: "241"
      },
      {
        date: "2011-February",
        price: "101"
      },
      {
        date: "2011-March",
        price: "90"
      },
      {
        date: "2011-April",
        price: "120"
      },
      {
        date: "2011-May",
        price: "135"
      },
      {
        date: "2011-June",
        price: "99"
      },
      {
        date: "2011-July",
        price: "105"
      },
      {
        date: "2011-August",
        price: "101"
      },
      {
        date: "2011-September",
        price: "106"
      }
    ]
  },
  {
    name: "UK",
    values: [{
        date: "2010-October",
        price: "130"
      },
      {
        date: "2010-November",
        price: "120"
      },
      {
        date: "2010-December",
        price: "115"
      },
      {
        date: "2011-January",
        price: "220"
      },
      {
        date: "2011-February",
        price: "100"
      },
      {
        date: "2011-March",
        price: "140"
      },
      {
        date: "2011-April",
        price: "90"
      },
      {
        date: "2011-May",
        price: "235"
      },
      {
        date: "2011-June",
        price: "160"
      },
      {
        date: "2011-July",
        price: "86"
      },
      {
        date: "2011-August",
        price: "201"
      },
      {
        date: "2011-September",
        price: "140"
      }
    ]
  }
];

const margin = 80;
const width = 1000 - 2 * margin;
const height = 550 - 2 * margin;

var duration = 250;

var lineOpacity = "0.25";
var lineOpacityHover = "0.85";
var otherLinesOpacityHover = "0.1";
var lineStroke = "1.5px";
var lineStrokeHover = "2.5px";

var circleOpacity = '0.85';
var...