Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify Selections / Filters #458

Open
alexsb opened this issue Jan 29, 2025 · 5 comments
Open

Simplify Selections / Filters #458

alexsb opened this issue Jan 29, 2025 · 5 comments
Assignees

Comments

@alexsb
Copy link
Member

alexsb commented Jan 29, 2025

I want to get out of selection logic hell, so here's my proposal to simplify selections:

  1. Element Visualizations always show all elements. We never filter anything out, not even for intersection selections. This works fine for scatterplots; might not work so well for KDEs, at least not with using default computations. We should probably replace KDEs in the element views with good old histograms.
  2. Element visualizations, always render bookmarked selections plus the active selection in color. Not selected elements get slightly transparent.
  3. Brushing a chart creates a new selection. Modifying the brush modifies the selection (does not create a new one)
  4. Brushing in a second chart creates a new selection based on ALL data; there is no AND logic.
  5. In the upset bars things remain as they are now: the active selection is shown, other selections have the little triangles.
@NateLanza
Copy link
Contributor

NateLanza commented Jan 30, 2025

My thoughts:
On points 1 & 2:

  1. I'm wondering if always visualizing all elements is useful, and also whether it would cause too much visual clutter for the selection colors to be useful. All elements on a scatterplot with a large dataset kinda turns into a grey blob, so I'm not sure why you'd keep it around during an intersection selection. For the frequency bar charts, selecting small intersections to try to look at their distributions wouldn't work if the Y axis is far larger due to showing all elements in the background. IE the bars for selected elements/intersections would be tiny by comparison and not visually distinct.
  2. I think, in addition to opacity, we should use mark type to distinguish the selected elements.
    On 3 & 4:
  3. These both already describe how the plot works. We only have AND logic between the selected/bookmarked intersections and the current element selection. So the plots show all elements that are within a selected or bookmarked intersection AND within the current element selection parameters. There can only be one element selection at a time; if you make a selection in a different chart or edit the current selection, it replaces the previous element selection.

I have some alternative ideas to fix some of these things:
4. The biggest issue I'm seeing now is that scatterplots are the only plot that uses the element selection's color; selected points are more opaque and use the selection color instead of intersection color. The histograms continue to divide elements by intersection (and show that by intersection bookmark color) during a selection. The frequency histograms use opacity to show the selection bars over the overall bars (I think this works well) and the density histograms use opacity as well to distinguish selected lines from overall lines.
5. To fix the color inconsistency between scatterplots and histograms, I think we should use marktype and opacity instead of color and opacity to distinguish selected points in scatterplots. That way, all 3 plots continue to use color to distinguish intersections during a selection.
6. With element selection color no longer used in the plots, we only need to pick one constant color to use for the element selection in the size bars. This resolves the inconsistency issue with element selection colors. For the bookmark chips, we can use the constant element selection color on the chip that's currently active, and give no color to chips that represent bookmarked but inactive element selections (these don't need a color anyway; they aren't used anywhere).
7. There's also the issue that element selections are ANDed with bookmarked intersections in the element view plots, but not in the size bars (ie the element selection is shown on all size bars). I personally don't think this is a huge issue, but we can decline to show the element selection on non-bookmarked rows to resolve the inconsistency.

@NateLanza
Copy link
Contributor

Moving a related issue here: from @alexsb on #459:

Clicking a non-bookmarked selection should not remove it, but activate it.
Clicking active selections is inconsistent / buggy, probably described in #383
Removing a selection should happen via context-menu on right click and say "remove selection". This should also directly work for bookmarked selections
Let's not remove a selection when clicking outside the plot. (It currently is inconsistent, I can click in some places to remove it, like next to the chart, but in others, like in the set view, it stays.) Let's do remove selection when clicking inside the plot (basically a new empty selection is created when this is done.

@NateLanza NateLanza marked this as a duplicate of #459 Feb 6, 2025
@NateLanza
Copy link
Contributor

My thoughts on these points:

  • You cannot have a non-bookmarked selection that is inactive. If a non-bookmarked selection is deactivated, its chip is removed and the selection is deleted. The current behavior is of clicking a non-bookmarked selection chip is to deactivate the selection (which is consistent with clicking an active & bookmarked selection chip), thereby removing it.
  • Yes and Bookmark colors are not always consistent #383 is backlogged until we figure out how we want things to behave.
  • Is a right-click context menu worth the effort to implement only for removing bookmark chips when we already have the bookmark star to do that? It's not a bad idea but I don't see it as necessary.
  • This is unclear, what is inside the plot? The only place I notice that doesn't make sense is the hidden sets; clicking here clears the selection and shouldn't. But otherwise if you click somewhere in the plot that doesn't trigger a different action, it'll clear selection.

@NateLanza
Copy link
Contributor

In meeting 2/11/25, we decided on the following to solve this:

  • Only 1 element selection at a time; unbookmarkable
  • 1 selection color
  • Selections are shown in their color, all other elements are grey
  • Maintain all elements in grey even when intersections are bookmarked/selected; add color to bookmarked/selected intersections

@NateLanza NateLanza marked this as a duplicate of #477 Feb 11, 2025
@NateLanza
Copy link
Contributor

Agreed in slack 2/26/25 that only items currently included in displayed intersections should be displayed in element view. So if the unincluded intersection is not present, element view should only show items in visible sets.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants