JSFiddle - React, Tailwind, and code Playground
by NunoMira
HTML
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/echarts.min.js"></script>
<div id="main"></div>
CSS
#main {
height: 400px;
width: 100%;
}
JavaScript
function prepareDataFunction(rawData) {
let data = [];
for (let i = 0; i < rawData.data.length; i++) {
let record = rawData.data[i];
if (record.r0 == undefined || record.v0 == undefined) continue; //taking only facts for this sample
let _record = {
member: record.r0,
value: !isNaN(record.v0) ? record.v0 : 0
};
data.push(_record);
}
return data;
}
function drawChart(rawData) {
// based on prepared DOM, initialize echarts instance
let myChart = echarts.init(document.getElementById('main'));
let data = prepareDataFunction(rawData);
// specify chart configuration item and data
let option = {
tooltip: {},
xAxis: {
data: data.map(function(d) {
return d.member;
})
},
yAxis: {},
series: [{
name: 'Category',
type: 'bar',
data: data.map(function(d) {
return d.value;
})
}]
};
// use configuration item and data specified to show chart
myChart.setOption(option);
}
function updateChart(rawData) {
drawChart(rawData);
}
function createChart() {
pivot.getData({},
drawChart,
updateChart
);
}