// 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;