You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hey!
Will begin by thanking you for continuing the work with ultraplot!
I've encountered what I think is an error with the formatting of row labels using a custom gridspec. If the first column of a row is empty, the row does not seem to count. Here is a minimal example:
The labeling does expect a grid, but do you want the label to appear immediate to the left or still on the outside grid? That is does the label for plot 3 need to be offset to the outside rectangle?
Yes that is a good question. For me, row/collabels are useful when there is something shared among them, maybe they belong to a group. So for the latest example, maybe top labels doesn't make sense?
To be consistent, perhaps being able to place labels according to the number of rows/cols reported by the axes object should work? For the example above I would've placed them at the bottom in that case. But I guess one can complicate things even further with something like [[1, 1, 2, 2], [0, 3 ,3 , 0], [4, 5, 6, 7]] where placing labels at the bottom wont work either.
I think it makes most sense if we "view" the labels as putting them on the axis that you hit first as if you were looking from the side of the grid, i.e.:
Activity
cvanelteren commentedon Oct 21, 2025
Thanks
axs = self._get_align_axes(side)function is causing the issue (part of figure.py)cvanelteren commentedon Oct 21, 2025
The labeling does expect a grid, but do you want the label to appear immediate to the left or still on the outside grid? That is does the label for plot 3 need to be offset to the outside rectangle?
Holmgren825 commentedon Oct 21, 2025
I think that I would prefer the row labels to be vertically aligned (it is what I'm currently trying out manually placing a text annotation.)
Edit: So basically like the working example above, but without the extra subplot.
cvanelteren commentedon Oct 21, 2025
I can see how we can allow row labels but col labels in this example is not trivial.
cvanelteren commentedon Oct 21, 2025
For example let's say we have
where should the top labels be placed?
Holmgren825 commentedon Oct 21, 2025
Yes that is a good question. For me, row/collabels are useful when there is something shared among them, maybe they belong to a group. So for the latest example, maybe top labels doesn't make sense?
To be consistent, perhaps being able to place labels according to the number of rows/cols reported by the axes object should work? For the example above I would've placed them at the bottom in that case. But I guess one can complicate things even further with something like
[[1, 1, 2, 2], [0, 3 ,3 , 0], [4, 5, 6, 7]]where placing labels at the bottom wont work either.cvanelteren commentedon Oct 21, 2025
see #376
cvanelteren commentedon Oct 21, 2025
We can allow for placing it on the left but error on the rest in the case I provided.
cvanelteren commentedon Oct 21, 2025
e.g. this works:
for left but no top (when n = 3) or bottom labels (n = 3 unless n = 5)
cvanelteren commentedon Oct 22, 2025
I think it makes most sense if we "view" the labels as putting them on the axis that you hit first as if you were looking from the side of the grid, i.e.:
cvanelteren commentedon Oct 22, 2025
So in this case:
You have 4 viewing from the right but 3 viewing from the left.
cvanelteren commentedon Oct 23, 2025
Fixed on main!