Skip to content

EOmaps v6.2

Compare
Choose a tag to compare
@raphaelquast raphaelquast released this 14 Mar 22:00
· 1258 commits to master since this release
d9dbe06

A minor release that brings new WebMap services and addresses handling of non-EOmaps artists.

🌳 New

Improved handling of artists added with matplotlib/cartopy methods

Handling of artists added with methods NOT provided by EOmaps (e.g. using matplotlib or cartopy methods directly) has been improved:

  • All artists that are created with non-EOmaps methods are now drawn on the "base" layer by default.
  • To put artists on dedicated layers, you need to explicitly add them to the blit-manager (m.BM):
    • for "dynamic" artists that have to be updated on every event on the map:
      m.BM.add_artist(artist, layer=...)
    • for "background" artists that only need to be re-drawn on pan/zoom/resize:
      m.BM.add_bg_artist(artist, layer=...)
from eomaps import Maps
m = Maps(layer="base")
m.add_feature.preset.coastline()  # EOmaps method... the layer of `m` is used for the artist

# a matplotlib method is used... this artist will show up on the "base" layer
m.ax.plot([10, 20, 30], [5, 78, 25], c="r", lw=3)

# to put arbitrary artists on dedicated layers, add them to the blit-manager:
l, = m.ax.plot([10, 20, 30], [5, 78, 25], lw=2, c="b")
m.BM.add_bg_artist(l, layer="my_line") 

🗺 New OpenStreetMap WebMap services added!

  • OpenRiverboatMap
  • CyclOSM
  • OEPNV_public_transport
  • OSM_WhereGroup
  • OSM_WaymarkedTrails
  • OSM_OpenRailwayMap
  • OSM_CartoDB basemaps

🔨 Fixes

  • fix drawing artists that were not added via EOmaps functions (e.g. using matplotlib/cartopy functionalitites)
  • fix using m.savefig() with bbox_inches="tight"