diff --git a/rslib/src/stats/graphs/intervals.rs b/rslib/src/stats/graphs/intervals.rs index 25e686e6f..7fef9e77e 100644 --- a/rslib/src/stats/graphs/intervals.rs +++ b/rslib/src/stats/graphs/intervals.rs @@ -23,13 +23,11 @@ impl GraphsContext { pub(super) fn stability(&self) -> Intervals { let mut data = Intervals::default(); for card in &self.cards { - if matches!(card.ctype, CardType::Review | CardType::Relearn) { - if let Some(state) = &card.memory_state { - *data - .intervals - .entry(state.stability.round() as u32) - .or_insert_with(Default::default) += 1; - } + if let Some(state) = &card.memory_state { + *data + .intervals + .entry(state.stability.round() as u32) + .or_insert_with(Default::default) += 1; } } data diff --git a/ts/graphs/intervals.ts b/ts/graphs/intervals.ts index 1f69bfe54..e16e648ea 100644 --- a/ts/graphs/intervals.ts +++ b/ts/graphs/intervals.ts @@ -78,6 +78,9 @@ function makeSm2Query(start: number, end: number): string { } function makeFsrsQuery(start: number, end: number): string { + if (start === 0) { + start = 0.5; + } const fromQuery = `"prop:s>=${start - 0.5}"`; const tillQuery = `"prop:s<${end + 0.5}"`; return `${fromQuery} ${tillQuery}`; @@ -120,8 +123,8 @@ export function prepareIntervalData( xMax = xMax! + 1; - // do not show the zero interval - const increment = (x: number): number => x + 1; + // do not show the zero interval for intervals + const increment = fsrs ? x => x : (x: number): number => x + 1; const adjustTicks = (x: number, idx: number, ticks: number[]): number[] => idx === ticks.length - 1 ? [x - (ticks[0] - 1), x + 1] : [x - (ticks[0] - 1)];