Cómo crear un mapa base reutilizable

Continuando con mi pregunta anterior: cómo superponer figuras en matplotlib me gustaría saber cómo se puede crear un objeto de basemap reutilizable. Mi problema es que un basemap no es un objeto de pyplot , por lo que la solución que recibí funciona bien en figures / axes pero no en objetos de basemap .

Traté de mirar alrededor y encontrar una solución, pero no pude encontrar ninguna, solo discusiones.

Gracias a @JoeKington aquí y @EdSmith en Cómo superponer figuras en matplotlib , pude entender cómo lograr lo que quería: reutilizar objetos de mapa base y pasarlos por alto.

Lo hice de esta manera:

  1. Creó un base_map.py que tiene dos funciones: plot() que crea un objeto de mapa y dibuja algunas propiedades y otra, set_a_map() que crea un objeto de mapa vacío.
  2. En los otros módulos que agregué a las funciones de trazado una propiedad map=None , y en cada función agregué un:

     if not map: map = base_map.set_a_map() 

    De modo que, en caso de que no se pase ningún objeto de mapa a la otra función, la función creará un nuevo objeto de mapa.

  3. En mis funciones de trazado, en lugar de usar plt.imshow(...) por ejemplo, estoy usando map.imshow(...) . De esta manera mis datos serán trazados sobre un mapa.

¡Gracias por la paciencia y los comentarios realmente útiles!