Voting Charts with Diversity Indexes

in #steemit4 years ago (edited)

I have been been wanting to create a report which shows a measure of how well a person spreads out (disperses) their votes for a while, but my early attempts weren't very good. In a recent discussion with @clayop, he independently suggested that it would be useful to add a diversity index for this purpose.

I wasn't aware of the terminology, but checking the appropriate wikipedia article made it clear this was what I had been looking for too.

There are actually a few such diversity metrics, and since the implementation was easy enough, I added a few that may be of use.

Gini-Simpson Index (derived from the Simpson index)

This shows the probability that two vote allocations taken at random are not to the same account. I like this measure because 0.0 represents a voter who gives all his votes to a single recipient, and as the value approaches 1.0 it means the votes has distributed his votes over a very large number of accounts.

Inverse Simpson Index

This gives an idea of the number of voters who have been effectively voted for, but is otherwise difficult to explain.

Shannon Index

The Shannon index has apparently been a popular diversity index in the ecological literature, but is again difficult to explain without resorting to maths.

You can read more about what these indexes represent online below:

I like the Gini-Simpson Index tool best. As the results are not only clear and bounded between zero and one, but can probably be understood and communicated most easily.


Thanks a million times. This platform will benefit steem a whole lot. It creates a perfect auditing mechanism. I have a very good friend that I was having a hard time convincing how big of an enabler Steem is, our main discussion revolved around vote power abuse. Steemreports will assist identifying abuse and so we are one step closer to stop vote abuses.


Haha my gini factor is similar to Cuba's XD

Wow, this is very cool. I think metrics like these should be visible directly on Steemit on some kind of Author stats/reputation page. That way, it is easier for anybody to get some more feeling with the contributions of the author to the platform :-)

Keep up the good work

It would be very nice to have a way to add this info to the avatar (on hovering for example). The calculation is quite processor intensive though so I don't think it would work at the blockchain level. It would require trusting another external service to provide accurate info, which I guess steemit wants to avoid.

Today I found this new report/graph you made available. I immediately tried it with 0.996 as the result; I think I have a nice result:

Thank you for this one!

Informative post , Thank you ,I'm still learning the ropes , I checked out the G-S index tool and I understand. What I don't get is how a voter can give all their votes to a single recipient , can anyone please explain .

I don't think many people would want to give all their votes to one single account, as it's probably not a good allocation of the reward pool, but if you only vote for posts by one particular Steem account, that means there will only be one recipient, and a GS score of 0.

(I apologize for comment that are not directly related to this posting.)
I'm newbie. I just found out this great tool.
Thanks to steemreports!