From 582cb9803c17012c22fb29bdf5cef7838a677db7 Mon Sep 17 00:00:00 2001 From: Christian Fehmer Date: Tue, 8 Aug 2023 11:54:17 +0200 Subject: [PATCH] Fix minWpm on accounts history graph, set ticks on accounts activity graph, set bucketSize for wph to 250 (#4511) fehmer --- frontend/src/ts/pages/account.ts | 14 ++++++++++---- frontend/src/ts/utils/typing-speed-units.ts | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/frontend/src/ts/pages/account.ts b/frontend/src/ts/pages/account.ts index 73224c28e..a2ed69b08 100644 --- a/frontend/src/ts/pages/account.ts +++ b/frontend/src/ts/pages/account.ts @@ -668,6 +668,8 @@ async function fillContent(): Promise { const activityChartData_amount: MonkeyTypes.ActivityChartDataPoint[] = []; const activityChartData_time: MonkeyTypes.ActivityChartDataPoint[] = []; const activityChartData_avgWpm: MonkeyTypes.ActivityChartDataPoint[] = []; + const wpmStepSize = typingSpeedUnit.historyStepSize; + // let lastTimestamp = 0; Object.keys(activityChartData).forEach((date) => { const dateInt = parseInt(date); @@ -694,8 +696,12 @@ async function fillContent(): Promise { ChartController.accountActivity.options as ScaleChartOptions<"bar" | "line"> ).scales; - accountActivityScaleOptions["avgWpm"].title.text = - "Average " + Config.typingSpeedUnit; + const accountActivityAvgWpmOptions = accountActivityScaleOptions[ + "avgWpm" + ] as LinearScaleOptions; + + accountActivityAvgWpmOptions.title.text = "Average " + Config.typingSpeedUnit; + accountActivityAvgWpmOptions.ticks.stepSize = wpmStepSize; ChartController.accountActivity.data.datasets[0].data = activityChartData_time; @@ -792,7 +798,6 @@ async function fillContent(): Promise { const wpms = chartData.map((r) => r.y); const minWpmChartVal = Math.min(...wpms); const maxWpmChartVal = Math.max(...wpms); - const wpmStepSize = typingSpeedUnit.historyStepSize; const maxWpmChartValWithBuffer = Math.floor(maxWpmChartVal) + (wpmStepSize - (Math.floor(maxWpmChartVal) % wpmStepSize)); @@ -807,7 +812,8 @@ async function fillContent(): Promise { accountHistoryScaleOptions["wpmAvgHundred"].max = maxWpmChartValWithBuffer; if (!Config.startGraphsAtZero) { - const minWpmChartValFloor = Math.floor(minWpmChartVal); + const minWpmChartValFloor = + Math.floor(minWpmChartVal / wpmStepSize) * wpmStepSize; accountHistoryWpmOptions.min = minWpmChartValFloor; accountHistoryScaleOptions["pb"].min = minWpmChartValFloor; diff --git a/frontend/src/ts/utils/typing-speed-units.ts b/frontend/src/ts/utils/typing-speed-units.ts index eb7a733ee..bbda7995f 100644 --- a/frontend/src/ts/utils/typing-speed-units.ts +++ b/frontend/src/ts/utils/typing-speed-units.ts @@ -52,7 +52,7 @@ const typingSpeedUnits: Record< }, fullUnitString: "Words per Hour", - histogramDataBucketSize: 60, + histogramDataBucketSize: 250, historyStepSize: 1000, }, };