-
Notifications
You must be signed in to change notification settings - Fork 10
Description
Hey Phillip! I have a suggestion for some new functionality, and I'd be happy to make a quick implementation of it and make a pull request if you like the idea. This is Gavin from PNSN, by the way :)
1. Problem Statement
On the Helicorder element, when the seismograph rows get too close together, the time labels get hard to read because they render on top of each other. The reason we don't just avoid this problem by keeping them spaced apart, I've been told, is that seeing seismographs closer together for long time ranges makes it easier to see patterns or something like that (not a seismologist lol).
2. Describe the solution you'd like
The Helicorder config could have an option for timeLabelSpacing or something like that, which would control how many lines are rendered on the Helicorder. The option would use the value as an amount of lines to "skip" as it draws. A spacing of 0 would mean drawing every line, 1 would mean drawing every other line, etc.
I think this functionality would go well into the drawSeismograms method in helicorder.ts, using the modulus operator to skip a certain amount of line labels according to the config.
3. Assumptions
- The easiest implementation to solve this issue is adding a configuration option rather than a dynamic spacing system that may not always be what users want, if they want any dynamic spacing at all.
- Users would be satisfied with this option of handling the dynamic spacing themselves.
4. Use Cases
- When a user changes the line spacing to be smaller than the font size through the
overlapconfig option, they would simultaneously reduce thetimeLabelSpacingoption to compensate.