1π
β
In your filterChart
method you just need to accept a parameter that the inputted number is. Then you can filter against it like so:
const textChangeHandler = (i) => {
setEnteredText(i.target.value);
console.log("target.value", i.target.value);
filterChart(Number(i.target.value)); // Call filter after entering value
};
const filterChart = (filterVal = Number.MIN_SAFE_INTEGER) => { // Expect value to filter against, default to lowest safe integer to show all data
const filterData = myChart.data.datasets[0].data.filter(value => value > filterVal) // Filter against value
console.log("filterData y", filterData)
const filterLabels = [];
const filterColors = [];
let i = 0;
for (i; i < filterData.length; i++) {
const result = myChart.data.datasets[0].data.indexOf(filterData[i]);
data.datasets[0].data.indexOf(filterData[i]);
const labelsresult = myChart.data.labels[result];
const colorsresult = myChart.data.datasets[0].backgroundColor[result]
filterLabels.push(labelsresult);
filterColors.push(colorsresult);
}
myChart.data.datasets[0].data = filterData;
myChart.data.labels = filterLabels;
myChart.data.datasets[0].backgroundColor = filterColors;
}
Also if you are using react-chartjs
you dont need to make a chart object yourself, you are only wasting memory usage with that
Source:stackexchange.com