@@ -71,35 +71,33 @@ export function ChartContainer(props: {
7171 pan : [ 0 , 0 ] ,
7272 } ) ;
7373
74- // Update scaleXInstance when scaleX props change
74+ // Update scales when props change
7575 createEffect ( ( ) => {
76- const [ min , max ] = chart . scalePropsX . domain ;
77- const pan = chart . pan [ 0 ] ;
76+ const [ minX , maxX ] = chart . scalePropsX . domain ;
77+ const [ minY , maxY ] = chart . scalePropsY . domain ;
78+ const [ panX , panY ] = chart . pan ;
7879 const zoom = chart . zoom ;
79- const zoomedDomain = getZoomedAndPannedDomainLinear ( min , max , pan , zoom ) ;
8080
81+ const zoomedXDomain = getZoomedAndPannedDomainLinear (
82+ minX ,
83+ maxX ,
84+ panX ,
85+ zoom ,
86+ ) ;
8187 const scaleX = supportedScales [ chart . scalePropsX . type ] ( )
8288 . range ( chart . scalePropsX . range )
83- . domain ( zoomedDomain ) ;
84-
85- updateChart ( "scaleX" , ( ) => scaleX ) ;
86- } ) ;
89+ . domain ( zoomedXDomain ) ;
8790
88- // Update scales when props change
89- createEffect ( ( ) => {
90- const [ min , max ] = chart . scalePropsY . domain ;
91- const pan = chart . pan [ 1 ] ;
92- const zoom = chart . zoom ;
93-
94- const zoomedDomain =
91+ const zoomedYDomain =
9592 chart . scalePropsY . type === "log"
96- ? getZoomedAndPannedDomainLog ( min , max , pan , zoom )
97- : getZoomedAndPannedDomainLinear ( min , max , pan , zoom ) ;
93+ ? getZoomedAndPannedDomainLog ( minY , maxY , panY , zoom )
94+ : getZoomedAndPannedDomainLinear ( minY , maxY , panY , zoom ) ;
9895
9996 const scaleY = supportedScales [ chart . scalePropsY . type ] ( )
10097 . range ( chart . scalePropsY . range )
101- . domain ( zoomedDomain ) ;
98+ . domain ( zoomedYDomain ) ;
10299
100+ updateChart ( "scaleX" , ( ) => scaleX ) ;
103101 updateChart ( "scaleY" , ( ) => scaleY ) ;
104102 } ) ;
105103
0 commit comments