Skip to content

Conversation

@keewis
Copy link
Member

@keewis keewis commented Oct 1, 2025

Very early draft of doing more advanced mapping / facet plots.

@keewis
Copy link
Member Author

keewis commented Oct 4, 2025

with this, we can now create a grid of plots (define the number of evenly sized plots per row and add infinitely many plots to get more rows), or add more layers to a already generated map.

It also supports synchronizing multiple maps, but this synchronization turns out to be pretty slow (so far sliders are never synchronized)

The feature will most likely stay a bit fragile for the moment, especially the overlaying.

@strobpr
Copy link

strobpr commented Oct 4, 2025

Excuse my ignorant intervention, but can you please guide me to where I can find what is meant by a 'grid of plots'? Is a plot the same as a 'sample (area)' and does the size of plots in any way relate to the distance between (the center of) plots? What exactly is your definition of 'grid' here? Same for 'map' and 'layer'? If there's an explanation or definition just link it here and I'll dig into it myself. Thanks!

@keewis
Copy link
Member Author

keewis commented Oct 4, 2025

"grid" in this case refers to an array of plots (or facet plot, for the definition of that see e.g. matplotlib), and thus to a widget design layout element and not a geospatial grid. Basically, what I'm trying to do is arrange multiple maps in some kind of table to be able to compare data visually.

"map" and "layer" follow the definitions of lonboard, where "layer" is a set of geometries / data and "map" is a collection of layers displayed in a cartographic projection and with basemap tiles for orientation – e.g. openstreetmap. I've kind of used "map" and "plot" to mean the same thing above. For examples for "maps", see e.g. at the bottom of the xdggs healpix tutorial, or any of the examples in the lonboard gallery

Since lonboard at the moment only supports WebMercator (or at least that's the default one, I have not yet found a way to customize that), that's the only one you will get. Hopefully we can add more choices (like a rotating globe view) such that we can provide an option to customize that for a given visualization / use case.

Does that answer your questions?

@keewis keewis merged commit b2855e1 into xarray-contrib:main Oct 7, 2025
22 of 23 checks passed
@keewis keewis deleted the explore branch October 7, 2025 15:22
@strobpr
Copy link

strobpr commented Oct 7, 2025

Thanks @keewis, that explains it very well. 'grid' caught my eye, as I'm currently diving into various concepts and definitions around this term in trying to better understand how we can define and categorize it in the geospatial context. This here is of course somewhat exotic, I'd have expected an expression like 'gallery' or 'facet array'.
In any case, I would be interested in the Lonboard definitions, is there a glossary?

1 similar comment
@strobpr
Copy link

strobpr commented Oct 8, 2025

Thanks @keewis, that explains it very well. 'grid' caught my eye, as I'm currently diving into various concepts and definitions around this term in trying to better understand how we can define and categorize it in the geospatial context. This here is of course somewhat exotic, I'd have expected an expression like 'gallery' or 'facet array'.
In any case, I would be interested in the Lonboard definitions, is there a glossary?

@keewis
Copy link
Member Author

keewis commented Oct 8, 2025

The term "grid" is pretty well established in user interface libraries (e.g. gtk, ipywidgets), so I borrowed that term from there. Most plotting libraries use "facet plot" instead, so that was somewhat non-standard on my part.

is there a glossary

I'm not aware of a glossary in either lonboard or deck.gl (but I didn't look too thoroughly), so you might have to look at the API reference instead.

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.

2 participants