In this post we create a *DiskCacher* class that can be used as a
*with* context manager, a function wrapper and as the pie-syntax
decorator. It modifies a given computation function, and tries to use
the cached data if possible, and only do the re-computation if the
cache is not found or the user forces an overwrite.
In this post I'll talk about some basic 2D geographical plotting workflows, using the `matplotlib` and `basemap` packages. Then we cover some common issues that are worth your attention when creating such plots.