@tec Your programming skills are FAR beyond what I can do. I started exploring voting options about 7 months ago, and seeing that IRV sometimes selects an outcome that is clearly not the best choice, it occurred to me that looking at the second choice of the ballots of the runner up made sense. That led to a sort of double-elimination approach. Using a spreadsheet to lay out a few scenarios, it appeared that the approach had some promise. Unable to find anyone to help me, I managed to create some php webpages that can be used to evaluate scenarios. Testing with that I found some anomalies so progressed to a hybrid approach. So far, it's checking out just fine.
I like the visual layout that you provided, and I haven't seen anything with the "indifference lines". It's similar to this: https://ncase.me/ballot/, which you're probably familiar with. I'd like to be able to start with ballot numbers and then have them displayed, rather than being limited to manipulating the image (which I think is fantastic too).
I was wondering too if your program calculates the distance between the two other options and then sets the second choice as the closest one.
Here's a link to the crude pages that I put together: https://wethepeople.ca/WTP_IRV-DEp1tester.php
I would definitely like to collaborate with you on an "evaluation framework".