Skip to content

Add support for multiple non-spatial dimensions#612

Open
clarasb wants to merge 28 commits into
mainfrom
clarasb/239-generalized_multidimensionality
Open

Add support for multiple non-spatial dimensions#612
clarasb wants to merge 28 commits into
mainfrom
clarasb/239-generalized_multidimensionality

Conversation

@clarasb

@clarasb clarasb commented Jun 19, 2026

Copy link
Copy Markdown
Collaborator

Summary

Add support for handling multiple non-spatial dataset dimensions (e.g. time, depth).

Changes

  • Added dimension selection controls for variables with multiple non-spatial dimensions (e.g. time or of type number)
  • Added two display modes (configure in settings):
    • select and control one dimension at a time
    • show controls for all non-spatial dimensions at once
  • Pass selected dimension values into map tile, statistics, and time-series API requests.
  • Display selected dimension values in statistics rows and time-series panel.
  • Updated user docs.

Testing

Mode 1

Screenshot 2026-06-18 161305_2

Mode 2

Screenshot 2026-06-18 161321

Closes #239.
Relevant for #608, however dimensions of type string are not supported yet.

Related changes in xcube: xcube-dev/xcube#1234

@clarasb clarasb self-assigned this Jun 22, 2026
@clarasb
clarasb marked this pull request as ready for review June 23, 2026 07:13
@clarasb
clarasb requested a review from forman June 23, 2026 07:18
@clarasb
clarasb requested a review from freds-dev June 23, 2026 07:19

@freds-dev freds-dev left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested functionality. Worked fine.

@freds-dev
freds-dev self-requested a review July 13, 2026 14:02

@freds-dev freds-dev left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Just 2 minor things that might be worth looking at.

Comment on lines +72 to +75
useEffect(() => {
playOrNot();
return uninstallTimer;
});

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a dependency array here? Right now this runs after every render

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, but I suggest to do this in a separate PR, after this one is merged.

Comment thread src/components/DimensionValueSlider.tsx Outdated

useEffect(() => {
setSelectedDimensionValue_(
selectedDimensionValue ||

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can 0 be a valid value here? If so, can we use ?? instead of ||?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, sure. Thanks for pointing this out.

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

Successfully merging this pull request may close these issues.

Add selector for additional dataset dimensions

2 participants