JSFiddle - React, Tailwind, and code Playground

CSS

.axis path,
			.axis line {
				fill: none;
				stroke: #999;
				shape-rendering: crispEdges;
			}
			
			 text {
				font-family: sans-serif;
				font-size: 10px;
				stroke: #ccc;
			}
			
			.line {stroke: #ff8807; stroke-width: 2;fill: transparent;}
			
			.line1 {stroke:#ff3401; stroke-width: 2;fill: transparent;}
			
			.container {background: #222;}
			
			.area {
    fill: #000;
    stroke-width: 0;
    opacity: 0.5
}
.area1 {
    fill: #000;
    opacity: 0.2;
    stroke-width: 0;
}

JavaScript

var lineData = [ { "x": 0,   "y": 5},  { "x": 20,  "y": 20},
                 { "x": 40,  "y": 10}, { "x": 60,  "y": 40},
                  { "x": 80,  "y": 5},  { "x": 200, "y": 30}];
                  
                  var p = [ { "x": 1,   "y": 0},  { "x": 20,  "y": 20},
                 { "x": 40,  "y": 10},
                  { "x": 60,  "y": 40},
                  { "x": 80,  "y": 5},
                    { "x": 90,  "y": 50},
                    { "x": 96,  "y": 10},
                     { "x": 102,  "y": 19},
                      { "x": 109,  "y": 13},
                       { "x": 119,  "y": 19},
                    { "x": 132,  "y": 30}, 
                   { "x": 143, "y": 41},
                   { "x": 149, "y": 29},
                   { "x": 200, "y": 80}
                  
                 ]


//Do some basic setup - set margins and widths for the entire graph			
var margin = {top: 20, right:20, bottom: 30, left: 30},
    width = 1200 - margin.left - margin.right,
    height = 700 - margin.top - margin.bottom;



//Define Scale
var x = d3.scale.linear()
    .range([0, width]);
    
   

var y = d3.scale.linear()
    .range([height, 0]);

//Define an x Axis
var xAxis = d3.svg.axis()
    .scale(x)
    .orient("bottom");

//Define an y axis
var yAxis = d3.svg.axis()
    .scale(y)
    .orient("left").ticks(4);
    
    var xScale = d3.scale.ordinal()
                .domain(d3.range(10))
                .rangeRoundBands([0, width],0);
    
    
     var yScale = d3.scale.ordinal()
                .domain(d3.range(4))
                .rangeRoundBands([0, height],0);
    
    
    



      
   var svg = d3.select("body").append("svg")
   .attr("class",'container')
    .attr("width", width + margin.left + margin.right)
    .attr("height", height + margin.top + margin.bottom)
  .append("g")
    .attr("transform", "translate(" + margin.left + "," + margin.top + ")");
    
           
        
       
        
     
        
         

    
    
    
   
   ...