File tree Expand file tree Collapse file tree 3 files changed +1841
-1823
lines changed Expand file tree Collapse file tree 3 files changed +1841
-1823
lines changed Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ import React from 'react'
3
3
4
4
import { Axis , Series , Datum } from '../types'
5
5
import {
6
+ clampPxToAxis ,
6
7
getPrimary ,
7
8
getSecondary ,
8
9
getSecondaryStart ,
@@ -60,8 +61,16 @@ export default function AreaComponent<TDatum>({
60
61
const areaPath =
61
62
area < Datum < TDatum > > (
62
63
datum => getPrimary ( datum , primaryAxis ) ?? NaN ,
63
- datum => getSecondaryStart ( datum , secondaryAxis ) ?? NaN ,
64
- datum => getSecondary ( datum , secondaryAxis ) ?? NaN
64
+ datum =>
65
+ clampPxToAxis (
66
+ getSecondaryStart ( datum , secondaryAxis ) ?? NaN ,
67
+ secondaryAxis
68
+ ) ,
69
+ datum =>
70
+ clampPxToAxis (
71
+ getSecondary ( datum , secondaryAxis ) ?? NaN ,
72
+ secondaryAxis
73
+ )
65
74
) . curve ( curve ) ( series . datums ) ?? undefined
66
75
67
76
const linePath =
Original file line number Diff line number Diff line change @@ -247,6 +247,15 @@ export function getHeight<TDatum>(
247
247
: getSecondaryLength ( datum , secondaryAxis )
248
248
}
249
249
250
+ export function clampPxToAxis < TDatum > ( px : number , axis : Axis < TDatum > ) {
251
+ const range = axis . scale . range ( )
252
+ if ( axis . isVertical ) {
253
+ range . reverse ( )
254
+ }
255
+
256
+ return Math . max ( range [ 0 ] , Math . min ( px , range [ 1 ] ) )
257
+ }
258
+
250
259
export function getTickPx < TDatum > ( scale : Axis < TDatum > [ 'scale' ] , value : any ) {
251
260
let px = scale ( value ) ?? NaN
252
261
You can’t perform that action at this time.
0 commit comments