Spool Visualisation #672
Replies: 3 comments 1 reply
|
I think these could be quite useful. All of the visualizations would be based on the dataframe of the spool contents (created with For plotting gaps, I have been meaning to add a The tests for these functions would go in the corresponding test files, (tests/test_utils/test_pd.py and tests/test_core/test_spool). In each case, make a new test class named after the function name. For the visualizations, I think making a viz/spool.py module would be a good option. |
|
@d-chambers I finally got around to work more on this. But I need some expert input and opinion: The main concern is about the future data base. If this is happening soon-ish, I'd rather wait with this until the new mechanism is in place. Then there is a question on how to handle documentation and tests. my test files are tens-of-megabyte, and should not be part of the git-package. Can we somehow auto-generate an example spool on the fly? Then is a question how to handle short spools (less than 24, or just a few days). the current calendar-view is geared towards long (multi-month) spools. We could then show the calendar as hour-long cells instead of the day-cells. But that could also be a future feature. Note:
See the branch here: https://github.com/DASDAE/dascore/tree/feature/spool-viz |
|
Hey @andreas-wuestefeld, Thanks for putting this together; the screenshots make the use case much clearer. On the spool database concern, I don't think the backend work needs to block this. The The one backend-specific part to remove is the standalone example using For the same reason, the tests do not need large real data files or even generated patches. I suggest allowing each plotting function to accept either a spool or a DataFrame, with a small helper that converts a spool using A few suggestions on the current implementation:
I would not block an initial PR on every possible metadata statistic or the hourly calendar. A focused first version with a stable DataFrame-based input, correct gap/overlap semantics, tests, and the spool namespace wiring would already be useful. |


Uh oh!
There was an error while loading. Please reload this page.
A spool is a great source of information. Notably for data-availability and acquisition parameters.
Spool.viz... returns currently a "not implemented" type of error
I suggest to implement basic plotting of data evolution. Two parameters should be straight forward
Show data-gaps (i.e. instrument downtime); This assumes that all manufacturers have their own characteristic file duration. Not sure if Sintella ProtoBuf is possible, but that can be seen later
Sampling rate: See if and when acquisition parameters were changed.
Furthermore, adding gaugelength to the spool would allow to also plot that parameter evolution.
Here is a vizualisation of a recent dataset (boring for sampling rate, but you should get the idea)

Questions:
Is this considered useful by others?
Where would be a logical place to put such code?
All reactions