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="pivotContainer"></div>
JavaScript
var pivot = new Flexmonster({
container: "pivotContainer",
componentFolder: "https://cdn.flexmonster.com/",
toolbar: true,
report: {
"dataSource": {
"data": getData(),
mapping: {
"Date Client RR/Due Date": {
"type": "year/month/day"
},
"Vacancy in % Aggregation subtotal m²": {
"type": 'number'
}
}
},
"slice": {
"rows": [{
"uniqueName": "[Measures]"
}],
"columns": [{
"uniqueName": "Date Client RR/Due Date",
"levelName": "Date Client RR/Due Date.Year",
"caption": "Year"
}],
"measures": [{
"uniqueName": "Vacancy in % Aggregation subtotal m²",
"aggregation": "average",
"grandTotalCaption": "Vacancy in %",
"format": "formatpercentage"
}],
"drills": {
"columns": [{
"tuple": [
"date client rr/due date.[2017]"
]
},
{
"tuple": [
"date client rr/due date.[2017].[january]"
]
},
{
"tuple": [
"date client rr/due date.[2017].[march]"
]
},
{
"tuple": [
"date client rr/due date.[2017].[may]"
]
},
{
"tuple": [
"date client rr/due date.[2017].[july]"
]
},
{
"tuple": [
"date client rr/due date.[2017].[october]"
]
},
{
"tuple": [
"date client rr/due date.[2017].[december]"
]
}
]
}
},
"options": {
"viewType": "charts",
"grid": {
"showTotals": "off",
"showGrandTotals": "off"
},
"chart": {
"type": "line",
"title": "Total Object Vacancy",
"showFilter": false,
"multipleMeasures": true,
...