compdemocracy / polis

:milky_way: Open Source AI for large scale open ended feedback
https://pol.is
GNU Affero General Public License v3.0
716 stars 169 forks source link

Improve visual differentiation of opinion groups / clusters #706

Open patcon opened 3 years ago

patcon commented 3 years ago

Right now, we label opinion groups A-J, and label the selection buttons below accordingly. This means that a visualization can show up to 10 different opinion groups, though in practice, I've only witnessed up to 5 appearing (seen this twice, with 60-90 participants).

Screen Shot 2020-12-26 at 11 13 07 PM

It might be neat to consider how to better differentiate these groups, for people who process information in different ways.

Ideas

  1. color hues. different hues for each group.
  2. patterns. fill patterns as used in monochromatic cartography. sample
  3. ...

Open Questions

  1. should differentiating aspects (e.g., colors or patterns) be randomized between pageloads, or consistent across all users? consistency would allow for a common language (barring reassignment of identifiers when groups re-calculate), but randomized would mitigate the interpretative bias that colors/patterns might create. (e.g., maybe a red group would be interpreted ever-so-slightly as more antagonistic in disposition)
  2. will accommodating additional learning and perceptual modalities allow people to more quickly and easily interpret visualizations? For example, when flipping between groups, trying to build narratives, will it be easier when groups are better distinguished from one another.
  3. contrast. will people lacking sight be able to understand at least as well as they currently can? will people who lack perception of contrast or colors still be able to read viz as well as before?
patcon commented 3 years ago

Noticing in Hull component that there used to be a fill color, but it was commented out. Colors defined here:

https://github.com/pol-is/polis/blob/1fe7e5279b0184d6b5edfd420d15c3822308c52f/client-participation/vis2/components/globals.js#L60-L76

Curious to know why it was removed :)

ThenWho commented 3 years ago

I like the idea! Giving visual cues helps people process information better. We should be careful with accessibility, as you say @patcon , especially to not make matters accidentaly worse. E.g. carefully craft/adopt an accessible palette (not random) and stick with it, and even have the monochrome patterns as an additional accessibility option, to be turned on or off on demand.

But the devil is in this detail:

barring reassignment of identifiers when groups re-calculate

I think this is going to be the biggest obstacle, as the groups change over time, and imo not being consistent defeats the purpose of offering visual cues and a visual language.

Re: open questions:

  1. Obv I believe in fixed palette, also between group recalculations. But maybe some partial benefit can be gained even if it changes, it's quite possible. Nevertheless, you're absolutely right : no intense reds, blues or similar. I think only subdued colors should be eligible.
  2. This also ties to the fixed palette question. Maybe we can avoid reusing colors when groups merge or change significantly, if the palette is large enough (i.e. 15-20 colors).
  3. Valid question even today. Is the interface usable by people with limited vision?

Having said all that, no designer here though 🙂 - a professional opinion would be needed at some point. Most of the topics above need attention even if no changes are made to the palette/interface. Then some course of action may suggest itself.

Thanks for raising them @patcon !