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

Automated decimation for plotting? #407

Open
trexfeathers opened this issue Aug 8, 2023 · 6 comments
Open

Automated decimation for plotting? #407

trexfeathers opened this issue Aug 8, 2023 · 6 comments
Labels
status: decision required type: performance Auto-labelled for perf/* and performance/* branches

Comments

@trexfeathers
Copy link
Collaborator

✨ Feature Request

An automatic feature that would intervene during plotting (so presumably part of GeoPlotter?) to reduce the resolution of a PolyData that would otherwise blow memory / cause excessive lag. I imagine the threshold for this would be configurable. There could perhaps be a layer of automation to account for the amount of compute resource actually available.

More sophisticated implementation might involve a visualisation API that encourages and helps users to either limit their region size or limit their resolution. At the very least a User Guide article on the subject.

Motivation

GeoVista's intended use cases will often involve visualising a data set that has global scale, but high enough resolution to closely examine local phenomena. From experience this is often beyond resource limitations when visualising. If the user is viewing global data, then they don't need such high resolution. If the user is viewing smaller regions, then they don't need to view the whole globe.

I see this as a GeoVista feature, rather than PyVista, since it is a particularly common problem with globe-based data sets, and some of the potential solutions could also take advantage of this (e.g. measuring resolution and region size in km).

Additional Context

Could use PyVista's own decimation, or something more sophisticated such as pyvista/pyvista-support#17.

@trexfeathers trexfeathers added the new: feature Highlight a new community raised "feature request" issue label Aug 8, 2023
@bjlittle
Copy link
Owner

bjlittle commented Aug 8, 2023

@trexfeathers Just so you're aware, this discussion has already started over on pyvista-xarray

@bjlittle
Copy link
Owner

bjlittle commented Aug 8, 2023

Also, my intention is for plots to have optional bounded regions that will limit the render to an easily defined limited cartographic domain i.e., not necessarily a bounded-box.

However, before doing this, generic region extraction requires to be supported.

I'll clarify this all in a feature roadpath for geovista.

@bjlittle bjlittle self-assigned this Aug 8, 2023
@scitools-ci scitools-ci bot removed this from 🚴 Peloton Dec 15, 2023
Copy link
Contributor

github-actions bot commented Feb 5, 2024

In order to maintain a backlog of relevant issues, we automatically label them as stale after 180 days of inactivity.

If this issue is still important to you, then please comment on this issue and the stale label will be removed.

Otherwise this issue will be automatically closed in 28 days time.

@github-actions github-actions bot added the stale A stale issue/pull-request label Feb 5, 2024
@tkoyama010
Copy link
Collaborator

This issue is still important.

@github-actions github-actions bot removed the stale A stale issue/pull-request label Feb 6, 2024
@bjlittle bjlittle added status: decision required type: performance Auto-labelled for perf/* and performance/* branches and removed new: feature Highlight a new community raised "feature request" issue labels Jun 20, 2024
@bjlittle
Copy link
Owner

@all-contributors please add @trexfeathers for ideas

Copy link
Contributor

@bjlittle

I've put up a pull request to add @trexfeathers! 🎉

@bjlittle bjlittle removed their assignment Oct 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: decision required type: performance Auto-labelled for perf/* and performance/* branches
Projects
None yet
Development

No branches or pull requests

3 participants