Horizontal visibility graphs
Describe the feature you'd like to have
I've just heard of a new concept for timeseries analysis, used a lot in brain science and EEGs, called "Horizontal visibility graphs".
Does this concept fit here? I guess we could have a complexity measure, or several, representing some quantities that can be extracted from thse graphs? Hard to tell if this fits here or not, I wanted to leave the reference!
(will write a summary of the concept later)
Cite scientific papers related to the feature/algorithm
- https://arxiv.org/abs/1002.4526
- https://www.pik-potsdam.de/~donges/pyunicorn/examples/tutorials/VisibilityGraphs.html
- https://pubs.aip.org/aip/cha/article/25/11/113101/134592/Unified-functional-network-and-nonlinear-time
Hm, now that I think about it, not so easy to make this quantity a complexity measure, because it doesn't really output a "scalar". It produces a graph and people use stuff like the degree disribution of the graph as a quantity of interest.
In principle, I don't see why we could have complexity measures that return something else than a scalar. However, I haven't read about this before and would need to dive a bit deeper to give an informed opinion.
Graph complexity measures are a thing, though, so my initial reaction is «why not?»
That's exactly why, because graph complexity is a big topic in itself, there are so many techniques to get a timeseries into a graph, and then do some analysis on that graph, that I am thinking whether this should be a separate package alltogether... ComplexityMeasures.jl has this nice clean design with the output always being a scalar I am a bit afraid of "polluting" this design.
This pyunicorn package for example is focused primarily on this complex networks approach: https://pubs.aip.org/aip/cha/article/25/11/113101/134592/Unified-functional-network-and-nonlinear-time