Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork7.9k
Improve timeline example.#28014
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
timhoffm commentedApr 3, 2024 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
I kind of liked the horizontal layout because time is often on the horizontal axis. Can we still get away with that? (If not I also won't block). The sorting by release date should already decrease overlap of lines and labels a lot. Then, left-align the labels to the bars. You could add a semi-transparent white background to the text to make the overlap less visually distracting. Additional suggestion: Fill the minor releases with the red line color to make them stand out also on the axis. |
I would go further and use a smaller font for point releases, and maybe try and have the minor releases always to the far left or far right? For the one or two releases with visual overlap, I'd actually nudge them manually. Or we could use this as an excuse to show an automated un-overlapping algorithm. |
timhoffm commentedApr 3, 2024 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
Let's not stray too far from the main topic. If you want to show an un-overlapping algorithm, that's worth an example of its own (e.g. add annotations to scatter points). 😀 |
Probably in the future works bin, but this could be a nice example to show off a scroll widget 😅 |
A native scroller (probably not a matplotlib scroll widget...) is something that@efiring has been arguing for for some time, IIRC (I agree that would be useful). |
timhoffm commentedApr 3, 2024 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
Alternative suggestion:
We still have a bit of overlap, but I like the grouping by minor releases. |
Yes, that looks way better. I would have put 3.0.0 on the opposite side of 2.2.0, though? so not "minor % 2" but more like "index into the list of major.minor releases (ignoring micro) and get that index %2". |
Feel free to take and modify my code. |
Uh oh!
There was an error while loading.Please reload this page.
This looks good. As minor nits - I'd drop "v" from each label as very redundant. I'd also make the version labels a different font from the dates either size, italics, or both. But feel free to self merge if you don't agree w those suggestions. |
- Make the timeline vertical, which avoids many overlaps between labels and lines.- Sort releases by dates, so that the oldest release starts with a long stemline rather than some random length depending on how many releases there are.- Make minor releases fainter, which improves the hierarchical impression.- Switch to yearly date labels, which are enough for this timeline.
Old figure:


New figure:
Further improvements left as "future work" :-)
PR summary
PR checklist