EOmaps v2.0
This release represents a complete re-work compared to EOmaps v1.x.x !
🌼 A documentation is now available on readthedocs! >>> check it out here
🌳 new
🌴 WMS and WMTS capabilities
- ❗ requires optional dependency
owslib
- WMTS (or WMS) layers can be added via:
m.add_wmts.<COLELCTION>.add_layer.<LAYER>(**kwargs)
m.add_wmts.<COLELCTION>[<LAYER>](**kwargs)
- pre-defined layers include interfaces to
- ESA Copernicus & WorldCover layers
- Sentinel-1 Global Backscatter Model
- EEA Discomap layers
- NASA GIBS
- Austrian basemaps (basemap.at & Vienna)
- ... and more!
🌵 re-arrange plot-axes via drag & drop
- press
alt
+d
to activate / deactivate "axis-arrangement" mode- use the mouse to select the axis you want to change
- use "left/right/up/down" or the mouse to move the selected layer
- use "alt+left/right/up/down" to move the layer quicker
- use "ctrl+up/down" to show/hide colorbars & histograms
🌲 share callback-events between multiple Maps objects
- e.g.: click on one map to trigger a callback on multiple connected maps!
- to connect maps-objects, provide a "parent"-object on initialization
m = Maps(parent=m0)
- forward callback-triggers from one Maps object to others via:
m.cb.click.forward_events(m1, m2, m3)
- ... or join the callback-events "both-ways" via
m.cb.click.share_events(m1, m2, m3)
- to connect maps-objects, provide a "parent"-object on initialization
🌱... and some more:
- there's a new
MapsGrid
object to quickly initialize a grid of Maps-objects
m1, m2, m3, m4 = MapsGrid(2, 2)
- join zoom-limits between multiple axes (with the same crs)
m.join_limits(m1, m2, m3)
🦠changes
-
f
,gs_ax
andorientation
are now set on initialization of the Maps-object!
(they are no longer arguments ofm.plot_map()
) -
callbacks are now accessed differently
- instead of
m.cb.attach()
andm.cb_click.attach
there's nowm.cb.click
: trigger callbacks when clicking anywhere on the mapm.cb.pick
: trigger callbacks when clicking on a point of the plotted datasetm.cb.keypress
: trigger callbacks when pressing a keym.cb.dynamic
: trigger callbacks on events (e.g. zoom)
- instead of
🔨 fixes
- make sure shapes are properly copied on
m.copy()
- make sure
geod_circles
only takes numbers as radius - sharing callbacks now works across coordinate-systems!
- multiple temporary markers & annotations are now supported