diff --git a/src/components/Map/Drawer/BioEntityDrawer/OverlayData/GroupedOverlayAxes/GroupedOverlayAxes.components.tsx b/src/components/Map/Drawer/BioEntityDrawer/OverlayData/GroupedOverlayAxes/GroupedOverlayAxes.components.tsx
index c21e1dfaedf005bc09a88a7147b3952310676802..de4e92086ea87acc0646584c1b22424d447693cc 100644
--- a/src/components/Map/Drawer/BioEntityDrawer/OverlayData/GroupedOverlayAxes/GroupedOverlayAxes.components.tsx
+++ b/src/components/Map/Drawer/BioEntityDrawer/OverlayData/GroupedOverlayAxes/GroupedOverlayAxes.components.tsx
@@ -1,5 +1,6 @@
 import { SIZE_OF_EMPTY_ARRAY } from '@/constants/common';
 import { MapOverlay } from '@/types/models';
+import { useMemo } from 'react';
 import { OverlayAxis } from '../OverlayAxis';
 import { OverlayDataAxis } from '../OverlayData.types';
 import { getAxesSortedByValue } from '../utils/getAxesSortedByValue';
@@ -12,6 +13,7 @@ interface Props {
 export const GroupedOverlayAxes = ({ overlay, axes }: Props): JSX.Element | null => {
   const { idObject, name } = overlay;
   const overlayAxes = axes.filter(axis => axis.overlayId === idObject);
+  const sortedAxes = useMemo(() => getAxesSortedByValue(overlayAxes), [overlayAxes]);
 
   if (overlayAxes.length === SIZE_OF_EMPTY_ARRAY) {
     return null;
@@ -23,7 +25,7 @@ export const GroupedOverlayAxes = ({ overlay, axes }: Props): JSX.Element | null
         {name}
       </div>
       <div className="my-1 h-[1px] w-full bg-divide" />
-      {getAxesSortedByValue(overlayAxes).map(axis => (
+      {sortedAxes.map(axis => (
         <OverlayAxis key={axis.title} axis={axis} />
       ))}
     </div>
diff --git a/src/components/Map/Drawer/BioEntityDrawer/OverlayData/OverlayData.component.tsx b/src/components/Map/Drawer/BioEntityDrawer/OverlayData/OverlayData.component.tsx
index 6ee13184837234f71b27da7085e88162f958584a..bc52903a5a672ad55202dedd64bc42a8a3b56206 100644
--- a/src/components/Map/Drawer/BioEntityDrawer/OverlayData/OverlayData.component.tsx
+++ b/src/components/Map/Drawer/BioEntityDrawer/OverlayData/OverlayData.component.tsx
@@ -1,5 +1,6 @@
 import { ZERO } from '@/constants/common';
 import { overlaysOpenedSelector } from '@/redux/overlayBioEntity/overlayBioEntity.selector';
+import { useMemo } from 'react';
 import { useSelector } from 'react-redux';
 import { GroupedOverlayAxes } from './GroupedOverlayAxes';
 import { OverlayAxis } from './OverlayAxis';
@@ -19,6 +20,7 @@ export const OverlayData = ({
   const axes = useOverlaysAxes({ isShowOverlayBioEntityName });
   const uniqueAxes = getUniqueAxes(axes);
   const openedOverlays = useSelector(overlaysOpenedSelector);
+  const sortedAxes = useMemo(() => getAxesSortedByValue(uniqueAxes), [uniqueAxes]);
 
   if (uniqueAxes.length === ZERO) {
     return null;
@@ -26,7 +28,7 @@ export const OverlayData = ({
 
   const overlaysAxesContent = (
     <div className="flex flex-col gap-2 rounded-lg border border-divide p-4">
-      {getAxesSortedByValue(uniqueAxes).map(axis => (
+      {sortedAxes.map(axis => (
         <OverlayAxis key={axis.title} axis={axis} />
       ))}
     </div>