Closed Croydon-Brixton closed 3 years ago
@herbiebradley @rdnfn Branch is now ready for review. I'm aware that a detailed review today will likely not be possible, so don't feel pressured to. For the publicly deployed branch we can do that after the report deadline if needed.
Main new features:
.timestack()
) and to analyse time-series of landscape, habitat, class and patch level metrics. The node identification also allows us to determine absolute and relative growth rates for nodes as well as classifying the node-dynamics
type. While the functions for node-dynamics calculations, etc. are currently written in pure python, in my experiements they always exectued within under a second on graphs with ~2000 nodes. The major performance bottleneck are still edge computations when building up habitats or for getting e.g. avg_component_isolation
across time. I think several of these might be alleviated sligthly by casting the performance relevant code into cython
or numba
-izing what can be transformed with numba. But that's definitely something for after the report 😉 Other changes:
self.time
attribute. Inherits all else from GeoGraph.All done! Looks good to merge, I just made a commit adding a docstring to
_add_node
ingeograph.py
, and improving some type hints.
Thanks a lot, that's excellent!
As discussed, I'm opening this PR to the work in progress
graph-analysis-merging
branch to speed up the PR process.I will add more documentation and an overview of this PR once it's fully ready 😉