JSFiddle - React, Tailwind, and code Playground

by Kesav Telaprolu

HTML

<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="https://code.highcharts.com/6.1.1/highcharts.js"></script>
<div id="container" style="width: 1240px;        
             height: 688px;               
             border-radius: 10px;               
             border: 1px solid #dbdbdb;
             overflow:auto;
             position:relative;">

</div>

CSS

@font-face {
  font-family: "KantarBrownWeb-LightItalic";
  src: url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-LightItalic.eot");
  src: url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-LightItalic.eot?#iefix") format("embedded-opentype"), url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-LightItalic.woff2") format("woff2"), url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-LightItalic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "KantarBrownWeb-BoldItalic";
  src: url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-BoldItalic.eot");
  src: url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-BoldItalic.eot?#iefix") format("embedded-opentype"), url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-BoldItalic.woff2") format("woff2"), url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-BoldItalic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "KantarBrownWeb-Italic";
  src: url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-Italic.eot");
  src: url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-Italic.eot?#iefix") format("embedded-opentype"), url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-Italic.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "KantarBrownWeb-Thin";
  src: url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-Thin.eot");
  src: url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-Thin.eot?#iefix") format("embedded-opentype"), url("https://riofontstorage.blob.core.windows.net/kantar-fonts/KantarBrownWeb-Thin.woff2") format("woff2");
  font-weight:...

JavaScript

(input => {
    var chartWrapper = $("<div></div>").appendTo("#container")
        .attr("id", "chart_wrapper");

    var chartDiv = $("<div></div>").appendTo("#chart_wrapper")
        .attr("id", "chart_div");

    $('#chart_wrapper').append(`<style>
 
 #chart_wrapper{ 
 	width:1240px;
  height:688px;   
  position:relative;  
  padding: 35px 30px 20px 30px;  
  box-sizing:border-box;   
 }
 
 #chart_div{ 	
  	width:100%;
    height:100%;   
 }
 
 #chart_wrapper p {
 	margin : 0px;
 }
 #chart_wrapper div {
 	margin : 0px;
  box-sizing:border-box;
 }
 </style>`)
 
 var  dataSeries=[
       {
           "pim":[],
           "brandFluency":[],
           "amp":[],
           "marketshare":[],
           "waves":[]
       }
   ];

   for(var i=0;i<input.chartData.dataSeries.length;i++)
   {
       dataSeries[0].pim.push(parseInt(input.chartData.dataSeries[i].pim));
       dataSeries[0].brandFluency.push(parseInt(input.chartData.dataSeries[i].brandfluency));
       dataSeries[0].amp.push(parseInt(input.chartData.dataSeries[i].amp));
       dataSeries[0].marketshare.push(parseInt(input.chartData.dataSeries[i].marketshare));
       dataSeries[0].waves.push(input.chartData.dataSeries[i].wave);
   }

    console.log(dataSeries);

    var lineChartDataseries = [
       dataSeries[0].pim,
       dataSeries[0].brandFluency,
       dataSeries[0].amp,

    ]
    console.log(lineChartDataseries);
    var marketShareWidth;
    var pimWidth;
    var chartMarginLeft = 0;
    var lineMarginLeft = 0,
        lineMarginTop = 0,
        lineXPosition = 0;
    var chartArray = [];
    chartArray.push(Math.max.apply(Math, dataSeries[0].marketshare));

    chartArray.push(Math.max.apply(Math, dataSeries[0].pim));

    chartArray.sort(function (a, b) {
        return b - a
    });

    var scale = 96;


    if (dataSeries[0].waves.length <= 4) {
        scale = 104;
    }


    var steadyXPosition = 0;
    var steadyYPosition = 0;
    var scaledMSArray = [],
        scaledPIMArray =...