This strikes me as the sort of project where developing a prototype first and doing the real thing after that makes sense. Get the data and vizualize it first (that's already hard enough) and then build all the CoinJoin analytics stuff into the real project later.
I think you overestimate Whirlpool's privacy, it's trivial to trace them by hand using a regular block explorer. This is just a tool that applies certain flags to Whirlpool spend patterns.
Then let me make the opposite suggestion: Build a prototype first that ONLY does the CoinJoin Analytics stuff in an automated way. E.g. A Python script that pulls data from a CSV file and outputs what you would have drawn by hand.
This strikes me as the sort of project where developing a prototype first and doing the real thing after that makes sense. Get the data and vizualize it first (that's already hard enough) and then build all the CoinJoin analytics stuff into the real project later.