I have a tricky request that requires the user being able to change the values across 4 vectors. The catch is that the four vectors between them must total 100%.
My initial thought is to go with 4 sliders.
This would mean that, as the total must be 100%, the user would have to lower one value before raising another. Is this intuitive enough?
Maybe some help text and a red/green label for values under 100% (red) and on 100% (green)?
If anybody has a more elegant solution for this I'd love to here it!
Answer
Ask yourself if it's the system or the user that's concerned with 1% accuracy. Does the user really want to think about the distributed percentages, or just the priority of each point?
If a high level of precision is purely the domain of the system, consider asking your users how much they care about each point on a relative scale. You can break that down on the back-end and calculate the percentage for them. No humans doing math.
So in this illustration ...
The user sees:
Low
Medium
High
The system sees:
"Meh" = ((1*20)*(100/((1*20)+(3*20)+(5*20))) = 11.11111%
"Sure" = ((3*20)*(100/((1*20)+(3*20)+(5*20))) = 33.33333%
"OMG!!!" = ((5*20)*(100/((1*20)+(3*20)+(5*20))) = 55.55555%
Easy for the user, easy for the computer. It's a perfect world!
No comments:
Post a Comment