[Userscript] WaniKani Workload Graph

Version: 1.2.1
Displays a graph of your review workload over time.
Displays a graph of experienced level difficulty (error rate per level).

The script relies on the open framework .
Download/install the WK Workload Graph script from GreasyFork location .

Written as an addon to the brilliant

This script adds a chart button to the overview of reviews
heatmap_button

Although you can run it without the heatmap installed, in which case a Graph button is available in the header bar
header_button_1.1.2


Details on the graph

The graph will look something like this:

It displays a running 7-day average of done reviews, colored based on the initial stage of the item (not the stage after review). The x axis displays years (in green) and level ups (in black), the y axis displays the number of reviews done.
Since version 1.0:
The number of days used for the running average can be altered in the options panel on the right.
Since version 1.0.3:
Added display options for the graph in the options panel on the right
Since version 1.0.5:
Added a start date to the options panel to limit the visible data. Uncheck the options to display all data.
Since version 1.1:
Added options to turn off cumulative view, to split out the detail stages of apprentice and guru and to add more details indicators for the time-based x Axis labels.
Since version 1.2:
Added ? icon with axis explanation and color legend. The icon is a toggle, clicking it again will remove the explanation.
Be sure to click ‘Redraw’ when you want to see the results.

Note: it does not take into account any number of reviews you have pending, only the ones you completed on those days. The graph displays everything the heatmap displays, as I copied handsome amounts of code from Kumirei :innocent:
It also relies on Kumirei’s review cache script, but this is linked within the script itself.

Since version 1.0:
Next to the minimize/close graph button there is a new button to toggle to the second graph.
ld_1.1

This graph displays your accumulated error percentage per level. Use it to figure out which are the hardest levels for you! For those that struggle to understand what can be read in this graph, in mine above you can clearly see that I’ve only done Apprentice/Guru I reviews on the last few levels and I don’t tend to get too many wrong of those. There’s a jump in difficulty for levels that have had their Guru II / Master review rounds and another massive jump (around lvl 30) for where I’m at with burning (at which point I tend to miss quite a few items).
The further back a level is, the more reliable the data.
Since version 1.1:
A coloring that indicates level stage progress can be toggled in the options panel on the right.
Be sure to click ‘Redraw’ when you want to see the results.
Again, this graph should take into account level resets (displaying the data for pre-reset levels as separate series), but I’m kind of counting on the community to help test with that.
Since version 1.2:
Added option to filter out ‘moved items’. As WaniKani has been moving items to other levels, you may spontaneously see you have an accuracy measurement at f.i. level 50 or 51. Checking the ‘Hide moved items’ makes the graph ignore all level with fewer than 20 reviews total.
Since version 1.2:
Added ? icon with axis explanation and color legend. The icon is a toggle, clicking it again will remove the explanation.


Pending items
Items that have been requested/suggested or are simply still in the works:

  • end date
  • lessons graph
  • recognizable level markers after reset
  • historic queue sizes
  • axis labels
  • default burn vs golden burn option (level difficulty graph)
  • graph naming

History

date version description
2021-02-27 0.1 initial version
2021-03-05 0.2 added x axis labels to level resets
moved y axis labels further left
use heatmap-loaded event to move graph button into the heatmap
2021-03-06 0.3 tidied up header button, fixed integration with Level Duration 2 script
2021-03-08 1.0 added options panel for workload graph
added level difficulty graph
2021-03-08 1.0.1 added opacity for difficulty graph reset series
2021-03-09 1.0.2 add nullcheck for difficulty graph level resets
2021-03-09 1.0.3 cleaned up unnecessary lines for reset series (difficulty graph)
added reverse and fill options (workload graph)
2021-03-09 1.0.4 cleaning of vertical lines on level resets (difficulty graph) (again)
2021-03-11 1.0.5 added a start date to the options panel (workload graph)
2021-03-27 1.1 added option for level stage coloring (difficulty graph)
added option to split out apprentice / guru detail stages (workload graph)
added option to disable cumulative review mode (workload graph)
added option to add additional quarter/month x axis labels (workload graph)
hopefully fixed issue with discontinuous reset graph lines (difficulty graph)
2021-07-21 1.1.1 updated review cache dependency to the newest version
2021-08-03 1.1.2 swapped order of Graph and Levels buttons to prevent script conflicts
display options for graphs are now persistent across page reloads
2021-09-19 1.2 Added option to filter out moved items (level difficulty graph)
Added help/legend for both graphs
2021-10-05 1.2.1 updated icon classnames to Font Awesome v4
36 Likes

Oooooh I love this! Thanks for making this

3 Likes

This is great! I need to remember to try it when I get home

Happy to see someone else make use of the review cache, too

5 Likes

Running MacBook Air MacOS Mohave 10.14.6 on Firefox 86.0.
Weird blip on first try at download, but second try was fine.
Here are my spiky spikes :sweat_smile:
Screen Shot 2021-02-27 at 10.39.45 pm

7 Likes

Woah, this looks wild :laughing:

7 Likes

Mine looks a little different :crazy_face:
Thanks for making this, I love it!
I’ve seen other graph links, but they never worked for me!

5 Likes

I love it. :heart:
So much variance :smiley:

image

5 Likes

works for me, though still early in WK:

running Firefox 86.0 with Tampermonkey on MacOs 10.15.7

5 Likes

My workload graph looks like this:

5 Likes

absolutely amazing userscript! I already am a big fan of the heatmat and having something else to track my progress with is just amazing, thank you!!

workload

I’m still in the early levels but it works perfectly :crabigator:

3 Likes

Looks great :grin: I’ve been wondering what my review breakdown has been recently, so this is a great addition.

3 Likes

Cool script even if I can’t see my 600+ review day :laughing:

Edit: After changing the script a little bit :eyes:

Looks better with the longer intervals though

3 Likes

The longer running day average does indeed look better, my single day graph is also a bit more pointy:

2 Likes

I personally prefer setting runningAverageDays to 100

What a nice graph

8 Likes

I don’t know why, but that looks kind of trippy

4 Likes

I have been a bad durtle

11 Likes

365 days running average makes me look better

5 Likes

Cool, cool.

2 Likes

I know it looks bad…I just recently started again. Although I don’t remember doing any reviews in 2019…did I just block that year from my memory??

4 Likes

image

Thanks so much for making this @rwesterhof! I was wondering how the number of daily reviews I was doing has changed over my time on WaniKani. Was even considering manually taking the numbers from the heatmap so I could map it out. You’ve saved me a bunch of time!

2 Likes