// import React, { useEffect, useRef, useState } from 'react';
// import Highcharts from 'highcharts';
// import HighchartsReact from 'highcharts-react-official';
// import "./PieChart.scss"
// const DynamicPieChart = ({ chartData }) => {
// const [overallValue, setOverallValue] = useState(0);
// const chartRef = useRef();
// useEffect(() => {
// if (chartRef.current && chartData) {
// const chart = chartRef.current.chart;
// chart.series[0].setData(chartData);
// const sum = chartData.reduce((total, dataPoint) => total + dataPoint.y, 0);
// setOverallValue(sum);
// // Update the chart title to include the overall value
// chart.setTitle({ text: `Overall Amount: ${sum}` });
// }
// }, [chartData]);
// return (
//
//
//
// );
// };
// export default DynamicPieChart;
// import React, { useEffect, useRef, useState } from 'react';
// import Highcharts from 'highcharts';
// import HighchartsReact from 'highcharts-react-official';
// import "./PieChart.scss"
// const DynamicPieChart = ({ chartData }) => {
// const [overallValue, setOverallValue] = useState(0);
// const chartRef = useRef();
// useEffect(() => {
// if (chartRef.current && chartData) {
// const chart = chartRef.current.chart;
// chart.series[0].setData(chartData);
// const sum = chartData.reduce((total, dataPoint) => total + dataPoint.y, 0);
// setOverallValue(sum);
// // Update the chart title to include the overall value
// chart.setTitle({ text: `Overall Amount: ${sum}` });
// }
// }, [chartData]);
// return (
//
//
//
// );
// };
// export default DynamicPieChart;
// create by sree
import React, { useMemo } from 'react';
import Highcharts from 'highcharts';
import HighchartsReact from 'highcharts-react-official';
import './PieChart.scss';
const DynamicPieChart = ({ chartData }) => {
const safeRound = (val) => {
if (val == null) return '0.00';
const num = Number(String(val).replace(/[^0-9.-]+/g, ''));
return isNaN(num) ? '0.00' : num.toFixed(2);
};
const overallValue = useMemo(
() => chartData?.reduce((total, { y }) => total + (y || 0), 0) || 0,
[chartData]
);
if (!chartData?.length) {
return No Data Found
;
}
return (
);
};
export default DynamicPieChart;