JSFiddle - React, Tailwind, and code Playground

by Ian Sadovy

HTML

<script src="https://s3.amazonaws.com/flexmonster/2.2/flexmonster.js"></script>
<button onclick="switchToPie()">Switch & Sort</button>
<div id="pivot-content"></div>

JavaScript

flexmonster.embedPivotComponent("https://s3.amazonaws.com/flexmonster/2.2/", "pivot-content", "100%", "600", {
  licenseKey: "Z53G-1T1WC3-1V1M-0L12-2M0A-1233-1I0Y-2Y2Q-1903-322S-0T2C-1I",
  configuratorActive: false,
  data: getData()
}, true);

function switchToPie() {
	flexmonster.showCharts("pie");
  sortPie();
}

function sortPie() {
	var report = flexmonster.getReport();
  var measure = report.chartActiveMeasure;
  if (measure == null || measure == "") {
  	measure = report.measures[0].uniqueName;
  }
  var column = report.columns[0].uniqueName;
  var tuple = [];
  if (column != "[Measures]") {
  	tuple = [flexmonster.getMembers(column)[report.chartActiveTupleIndex].uniqueName];
  }
  flexmonster.sortValues("columns", "desc", tuple, measure);
}

function getData() {
  return [{
    "Color": "green",
    "M": "September",
    "W": "Wed",
    "country": "Canada",
    "state": "Ontario",
    "city": "Toronto",
    "Price": 174,
    "Quantity": 22
  }, {
    "Color": "red",
    "M": "March",
    "W": "Mon",
    "Time": "1000",
    "country": "USA",
    "state": "California",
    "city": "Los Angeles",
    "Price": 1664,
    "Quantity": 19
  }, {
    "Color": "red",
    "M": "January",
    "W": "Mon",
    "country": "Canada",
    "state": "Quebec",
    "city": "Montreal",
    "Price": 1190,
    "Quantity": 292
  }, {
    "Color": "green",
    "D": "04/08/2014",
    "M": "August",
    "W": "Fri",
    "Time": "1000",
    "country": "USA",
    "state": "California",
    "city": "Los Angeles",
    "Price": 1222,
    "Quantity": 730
  }, {
    "Color": "white",
    "M": "March",
    "W": "Wed",
    "country": "USA",
    "state": "California",
    "city": "Los Angeles",
    "Price": 7941,
    "Quantity": 73
  }, {
    "Color": "red",
    "M": "August",
    "W": "Wed",
    "country": "Canada",
    "state": "Ontario",
    "city": "Toronto",
    "Price": 6829,
    "Quantity": 19
  }, {
    "Color": "green",
    "M": "January",
    "W": "Wed",
    "country": "Canada",
   ...