JSFiddle - React, Tailwind, and code Playground

by Flexmonster Pivot Table

HTML

<link rel="stylesheet" href="https://s3.amazonaws.com/flexmonster/2.3/demo.css">
<script src="https://cdn.flexmonster.com/flexmonster.js"></script>
<div id="pivot-container"></div>

JavaScript

let pivot = new Flexmonster({
  container: "pivot-container",
  componentFolder: "https://cdn.flexmonster.com/",
  toolbar: true,
  report: {
    dataSource: {
      /* type: "csv",
      filename: path to your csv file */
      data: getData(),
      mapping: {
        "Amount": {
          type: "number"
        },
        "Date": {
          type: "date"
        },
        "Category": {
          type: "string"
        }
      }
    },
    options:{
    showGrandTotals:"off"
    },
    slice: {
      rows: [{
        uniqueName: "Category"
      }],
      columns: [{
        uniqueName: "Date.Month"
      }, {
        uniqueName: "[Measures]"
      }],
      measures: [{
        uniqueName: "Amount",
        aggregation: "sum"
      }]
    }
  }
});

function getData() {
  return [{
      "Category": "Auto Maintenance",
      "Date": "2/1/2024",
      "Amount": 130
    },
    {
      "Category": "Food",
      "Date": "1/1/2024",
      "Amount": 150
    },
    {
      "Category": "Food",
      "Date": "1/15/2024",
      "Amount": 150
    },
    {
      "Category": "Utilities",
      "Date": "1/1/2024",
      "Amount": 100
    },
    {
      "Category": "Utilities",
      "Date": "1/3/2024",
      "Amount": 40
    },
    {
      "Category": "Utilities",
      "Date": "1/15/2024",
      "Amount": 250
    },
    {
      "Category": "Food",
      "Date": "2/05/2024",
      "Amount": 150
    },
    {
      "Category": "Food",
      "Date": "2/24/2024",
      "Amount": 200
    },
    {
      "Category": "Utilities",
      "Date": "2/1/2024",
      "Amount": 100
    },
    {
      "Category": "Utilities",
      "Date": "2/3/2024",
      "Amount": 40
    },
    {
      "Category": "Utilities",
      "Date": "2/15/2024",
      "Amount": 250
    }
  ]
}