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>
<script src="https://cdn.flexmonster.com/lib/flexmonster.highcharts.js"></script>
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/highcharts-more.js"></script>
<script src="https://code.highcharts.com/modules/accessibility.js"></script>
<div id="pivot-container"></div>
<div id="highcharts-container"></div>
CSS
#highcharts-container {
margin: 20px;
}
JavaScript
const pivot = new Flexmonster({
container: "#pivot-container",
componentFolder: "https://cdn.flexmonster.com/",
licenseFilePath: "https://cdn.flexmonster.com/jsfiddle.charts.key",
toolbar: true,
height:350,
report: {
dataSource: {
filename: "data/data.csv"
}
},
reportcomplete: function() {
pivot.off("reportcomplete");
areaChart();
},
beforetoolbarcreated: customizeToolbar
});
function customizeToolbar(toolbar) {
let tabs = toolbar.getTabs();
toolbar.getTabs = function() {
tabs = tabs.filter(tab => tab.id != "fm-tab-charts");
return tabs;
}
}
function areaChart() {
pivot.highcharts.getData({
type: "area",
slice: {
rows: [
{ uniqueName: "Country" },
{ uniqueName: "[Measures]" }
],
columns: [
{ uniqueName: "Business Type" }
],
measures: [
{ uniqueName: "Price" },
{ uniqueName: "Quantity" }
]
}
},
function(chartConfig) {
Highcharts.chart('highcharts-container', chartConfig);
},
function(chartConfig) {
Highcharts.chart('highcharts-container', chartConfig);
}
);
}