(Oops, I had been meaning to write this a long time ago but didn't get
around to do it.)
Some time ago I suggested that one may use Vivaldi coordinates
(https://en.wikipedia.org/wiki/Vivaldi_coordinates) with Kendall tau
distance to sort voters into different "camps" based only on the voters'
rankings.
But the principal value of Vivaldi is that it's distributed, and there's
no reason to use it if you're not going to do something distributed.
There's a whole class of algorithms that try to solve this problem,
which is called nonlinear dimensionality reduction.
One example would be multidimensional scaling,
https://en.wikipedia.org/wiki/Multidimensional_scaling; the Wikipedia
page even has an example graph with voting patterns in the House of
Representatives, showing that it can be used for voting analysis.
Other examples include isomap and t-SNE. Either of these would probably
be better than using Vivaldi :-)
The Wikipedia page on nonlinear dimensionality reduction lists a number
of other approaches:
https://en.wikipedia.org/wiki/Nonlinear_dimensionality_reduction#Important_…
and
https://en.wikipedia.org/wiki/Nonlinear_dimensionality_reduction#Methods_ba….
-km