stacked-area.html 3.59 KiB
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Stacked Area</title>
  <link href="../../assets/styles.css" rel="stylesheet" />
  <style>
    #chart {
      max-width: 650px;
      margin: 35px auto;
  </style>
</head>
<body>
  <div id="app"></div>
  <div id="html">
          &lt;div id=&quot;chart&quot;&gt;&#10;            &lt;ReactApexChart options={this.state.options} series={this.state.series} type=&quot;area&quot; height=&quot;350&quot; /&gt;&#10;          &lt;/div&gt;
  </div>
  <script crossorigin src="https://unpkg.com/react@16/umd/react.production.min.js"></script>
  <script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script>
  <script src="https://unpkg.com/prop-types@15.6.2/prop-types.min.js">
  </script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.34/browser.min.js"></script>
  <script src="https://cdn.jsdelivr.net/npm/apexcharts@latest"></script>
  <script src="https://unpkg.com/react-apexcharts@1.1.0/dist/react-apexcharts.iife.min.js"></script>
  <script type="text/babel">
    var generateDayWiseTimeSeries = function (baseval, count, yrange) {
      var i = 0;
      var series = [];
      while (i < count) {
        var x = baseval;
        var y = Math.floor(Math.random() * (yrange.max - yrange.min + 1)) + yrange.min;
        series.push([x, y]);
        baseval += 86400000;
        i++;
      return series;
    class AreaChart extends React.Component {
      constructor(props) {
        super(props);
        this.state = {
          options: {
            chart: {
              stacked: true,
              events: {
                selection: function (chart, e) {
                  console.log(new Date(e.xaxis.min))
            colors: ['#008FFB', '#00E396', '#CED4DC'],
            dataLabels: {
              enabled: false
}, stroke: { curve: 'smooth' }, fill: { type: 'gradient', gradient: { opacityFrom: 0.6, opacityTo: 0.8, } }, legend: { position: 'top', horizontalAlign: 'left' }, xaxis: { type: 'datetime' } }, series: [ { name: 'South', data: generateDayWiseTimeSeries(new Date('11 Feb 2017 GMT').getTime(), 20, { min: 10, max: 60 }) }, { name: 'North', data: generateDayWiseTimeSeries(new Date('11 Feb 2017 GMT').getTime(), 20, { min: 10, max: 20 }) }, { name: 'Central', data: generateDayWiseTimeSeries(new Date('11 Feb 2017 GMT').getTime(), 20, { min: 10, max: 15 }) } ], } } render() { return ( <div> <div id="chart"> <ReactApexChart options={this.state.options} series={this.state.series} type="area" height="350" /> </div> <div id="html-dist"> </div> </div> ); } } const domContainer = document.querySelector('#app'); ReactDOM.render(React.createElement(AreaChart), domContainer); </script> </body> </html>