import { useMemo } from 'react'; import { scaleBand } from 'd3'; type UseScaleBandXProps = { labels: string[]; xStart: number; xEnd: number; }; const useScaleBandX = ({ labels, xStart, xEnd }: UseScaleBandXProps) => { return useMemo( () => scaleBand().domain(labels).range([xStart, xEnd]).padding(0.2), [labels, xStart, xEnd] ); }; export default useScaleBandX;