Closed juseg closed 1 year ago
I am planning to do it for plot methods only. My idea is that v0.2 will ship with a variety of unbound plot functions for vectors (Natural Earth, paleoglaciers, shapefiles) not using datasets. Instead of mixing object-oriented and unbound code:
import hyoga.plot
ds.hyoga.plot.ice_margin()
hyoga.plot.rivers()
Some users might prefer a fully non-oo equivalent:
import hyoga.plot
hyoga.plot.ice_margin(ds)
hyoga.plot.rivers()
On the other hand something like hyoga.calc.interp(ds)
would require a new module hyoga.calc
(or many top-level functions). I don't see anything that would fit in hyoga.calc
but not in ds.hyoga
. Forgetting about hyoga.calc
.
I am backtracking on this one (see 6a61dcb). Thanks to GeoPandas (#24) shapefiles can be plotted as objects. This beautifully removes the need for any non-object-oriented plot interface (that hyoga.plot
would have been). Hyoga will stick object-oriented plotting.
Make ~dataset~ ~plot~ methods
Dataset.hyoga.plot.method(self, ...)
available as functionshyoga.plot.function(ds, ...)
.hyoga.plot.datasets
.~hyoga.calc.interp
etc.~