Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

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

Show _some_ data automatically in 3D panel #94

Closed
jtbandes opened this issue Nov 23, 2022 · 0 comments
Closed

Show _some_ data automatically in 3D panel #94

jtbandes opened this issue Nov 23, 2022 · 0 comments
Labels
panel: 3d ux Usability pain point

Comments

@jtbandes
Copy link
Member

jtbandes commented Nov 23, 2022

When using a new, blank 3D panel and connecting to any data source, the panel doesn't display anything until the user configures it in settings. This causes user confusion (e.g. foxglove/ws-protocol#278 (comment)). We should at least display some topics by default.

Originally, the default behavior of the new 3d panel was to subscribe to all available topics, but that was deemed too chaotic and data-intensive. Hiding only camera images was proposed, but we settled on hiding everything by default:

We've discussed displaying a grid by default (and some technical limitations that make this harder than it sounds):

Separately from the grid, though, it would still be better to show some actual user data without requiring the user to discover and understand panel settings.

Of course, if we choose to show some but not all user data by default, it might cause confusion when users don't understand some data is automatically hidden, and just assume that some of their data doesn't work. So we may need to improve settings discoverability as well. (cc @2metres @ocin-rye @esthersweon)

Copying my ideas from https://github.com/foxglove/studio/issues/3643#issuecomment-1164941057:

Here are some ideas for heuristics if we decide that showing all topics is too much.

  • Prioritize topics by data size, if we know the size, otherwise sort by schema in order to estimate how expensive it is to show topics.
    • e.g. if we have to choose between a Pose or a Marker and an Image message, we should drop the Image first since it's likely to be much more expensive to visualize.
    • Then show at most 20 topics by default in this priority order.
  • If we didn't turn on all topics by default, show the user a message/popup saying something to the effect of "some topics are hidden, open settings sidebar to customize".
  • Keep in mind that the same layout may be used with different data sources over time, or a single live data source that gains more topics. So we have to respond dynamically to new topics coming online. This might be tricky since we don't want to store the list of "seen topics" in the layout. We might need to keep careful track of which topics the user has manually toggled on/off, and only dynamically decide what to do for topics that have never been manually toggled. [related: Setting to Automatically Subscribe to Visualization Topics in 3D Tab #343]
  • Or just don't do any of this, because it sounds complicated and fragile

And some more ideas:

  • Show all topics of certain types by default (markers, poses, grids, etc.) but not cameras, unless there are only cameras available
@jtbandes jtbandes added ux Usability pain point panel: 3d labels Nov 23, 2022
@amacneil amacneil transferred this issue from another repository Dec 16, 2022
@foxglove foxglove locked and limited conversation to collaborators Dec 16, 2022
@amacneil amacneil converted this issue into discussion #100 Dec 16, 2022

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
panel: 3d ux Usability pain point
Development

No branches or pull requests

1 participant