Skip to content

BUG: Fix text appearing far outside valid axis scale range#31061

Merged
QuLogic merged 5 commits intomatplotlib:mainfrom
scottshambaugh:log_text_negative_coord
Mar 11, 2026
Merged

BUG: Fix text appearing far outside valid axis scale range#31061
QuLogic merged 5 commits intomatplotlib:mainfrom
scottshambaugh:log_text_negative_coord

Conversation

@scottshambaugh
Copy link
Contributor

@scottshambaugh scottshambaugh commented Feb 2, 2026

PR summary

Closes #31054

Text didn't have a get_tightbbox override yet, so this adds that with some handling for no-show cases. The _in_axes_domain check is not exclusive to text and may be useful elsewhere, so was given to Artist more broadly.

The plot in the original issue renders correctly now, and I can confirm it was broken for me before:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x) * 10

fig, ax = plt.subplots()
ax.plot(x, y)
ax.set_yscale('log')
ax.text(5, -5, "I am at y = -5", color='red')

plt.savefig("test_gh31054.png", bbox_inches='tight')
test_gh31054

PR checklist

@scottshambaugh scottshambaugh changed the title BIG: Fix text appearing far outside valid axis scale range BUG: Fix text appearing far outside valid axis scale range Feb 2, 2026
@scottshambaugh scottshambaugh force-pushed the log_text_negative_coord branch from 0d3ef72 to 7ef9295 Compare February 2, 2026 23:26
@scottshambaugh scottshambaugh force-pushed the log_text_negative_coord branch from 7ef9295 to 4ffb8d3 Compare February 3, 2026 00:13
@scottshambaugh scottshambaugh marked this pull request as ready for review February 3, 2026 00:26
@scottshambaugh scottshambaugh force-pushed the log_text_negative_coord branch from b558152 to 496411d Compare February 3, 2026 16:44
@timhoffm
Copy link
Member

timhoffm commented Feb 8, 2026

Waiting on #30161. Per #31061 (comment)

@scottshambaugh
Copy link
Contributor Author

scottshambaugh commented Feb 10, 2026

This one can merge as-is, then the change discussed above that would regenerate baseline images would be in a separate PR that targets #30161.

Co-authored-by: Tim Hoffmann <2836374+timhoffm@users.noreply.github.com>
@QuLogic QuLogic added this to the v3.11.0 milestone Mar 11, 2026
@QuLogic QuLogic merged commit 51a1ab6 into matplotlib:main Mar 11, 2026
40 checks passed
andreas16700 added a commit to andreas16700/matplotlib that referenced this pull request Mar 16, 2026
andreas16700 added a commit to andreas16700/matplotlib that referenced this pull request Mar 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[MNT]: Inconsistency in log-scale handling: bbox_inches='tight' creates massive canvas for negative text coordinates

3 participants