EOmaps v3.4.1
[hotfix release to fix issues with multiple maps in one figure]
... EOmaps v3.4
A release that brings a lot of updates on speed and memory management and some very nice (but possibly breaking) changes compared previous versions of EOmaps.
❗ IMPORTANT CHANGES ❗
⭐ Starting with EOmaps v3.4 all callbacks and colorbars are layer-specific !
This means that callbacks only trigger if the layer of the associated Maps
object is visible!
(...and colorbars are only visible if the associated layer is visible)
-
To trigger callbacks or add features & datasets independent of the visible layer, use
m.all.cb. ...
(or attach them to aMaps
object on the"all"
layer) -
Note:
pick
callbacks now always react to the visible collection!
(except for the ones on the"all"
layer)m = Maps(layer=0) m.cb.click.attach.annotate() # this callback is ONLY executed if the layer 0 is visible m1 = m.new_layer(layer=1) m1.cb.click.attach.mark() # this callback is ONLY executed if the layer 1 is visible m.all.cb.click.attach.annotate() # this callback is executed independent of the visible layer!
🍃 removed arguments
- the obsolete
"orientation"
argument has been removed fromMaps(...)
(it set the colorbar-orientation which is now specified viam.add_colorbar(orientation=...)
🌳 NEW
- ⭐
m.show()
can be used to make the associated layer visible. (a shortcut form.show_layer(m.layer)
- ⭐
m.BM.on_layer(...)
can be used to trigger functions if the visible layer changes. - 🌟 WebMap layers are now lazily evaluated and only added to the map if the corresponding layer is actually visible.
- 🌟 [experimental feature] memory-mapping can now be used to avoid using up a lot of ram for very large datasets
- Intermediate datasets are stored as memory-mapped files in a temp-folder on disk to release memory
- By default memory-mapping is disabled! (to activate it, use:
m.plot_map(memmap=False)
)
🌦️ changes
- Adding data from files (e.g.
m.from_file
orm.new_layer_from_file
) now always uses"shade_raster"
as the default plot-shape (since EOmaps v3.3.2, raster-shading works perfectly fine with re-projected rasters as well) - If a file with >2M data-points is plotted, only "shade" shapes are attempted by default to avoid overloading memory.
- only one colorbar is allowed for
Maps
objects (use multiple objects for multiple colorbars)
🔨 fixes
- Fix several issues with memory-leaks and garbage-collection of objects
- Fix autoscale_fraction not recognized when using
preset="bw"
inm.add_scalebar
- Maps objects are now properly garbage-collected
- Fix auto-scaling of scalebars for very small scales
Maps.from_file
now properly handlespathlib.Path
objects- Fix utility widget start-layer should be the currently visible layer
- Fix pick-events should only identify points on visible layers
- Fix
m.add_colorbar(log=True)
for horizontal colorbars - Fix colorbar limit autoscaling
- Fix logo size changes on zoom
- Remove obsolete
layer
kwarg fromm.add_logo
- Fix incorrect color-normalization for
shade_raster
orshade_points
ifvmin/vmax
outside the data-range are used
(thanks to @maxhollmann)
🔥 hotfix EOmaps v3.4.1
- fix issues with delayed WebMap services on multiple maps in one figure
- fix issues with
m.all
for multiple maps in one figure