-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Closed as not planned
Labels
status: closed as inactiveIssues closed by the "Stale" Github Action. Please comment on any you think should still be open.Issues closed by the "Stale" Github Action. Please comment on any you think should still be open.status: inactiveMarked by the “Stale” Github ActionMarked by the “Stale” Github Action
Description
I am reporting as possible bug.
When plotting a secondary y axis on the right, the xlim is not being properly auto scaled. As possible work around was proposed here, https://stackoverflow.com/a/27344398/4988010, however, it seems this was fixed here, 26ed35b. However, I am not seeing the issue being resolved on matplotlib v3.2.0.
%matplotlib widget
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots()
decay = lambda C, K, x: C *(1-np.exp(-1*K*x))
x = np.linspace(0,10,10)
# Create a secondary y axis on the right
twin_ax = ax.twinx()
for n in range(5):
C = n**2 + 5
K = 0.75
# Plot the exponential decay on left y axis
ax.plot(x,decay(C,K,x), marker='o', linestyle='--', label=C)
# Plot the limit of decay on right y axis
twin_ax.axhline(y=C, color='gray')
ax.legend()
ax.set_xlabel('X')
ax.set_ylabel('Measured values')
twin_ax.set_ylabel('Theoritical limit')
# Align the both left and right y axis
twin_ax.set_ylim(ax.get_ylim())
##################
# Issues or bugs
# Need to fix the X limits or else
# the graph doens't display properly
##################
print('xlim before fix: {}'.format(ax.get_xlim()))
ax.relim()
print('xlim after relim(): {}'.format(ax.get_xlim()))
# A hack to fix the issue # https://stackoverflow.com/a/27344398/4988010
twin_ax.plot(0, 0, visible=False)
print('xlim after fixing: {}'.format(ax.get_xlim()))
plt.show()
Metadata
Metadata
Assignees
Labels
status: closed as inactiveIssues closed by the "Stale" Github Action. Please comment on any you think should still be open.Issues closed by the "Stale" Github Action. Please comment on any you think should still be open.status: inactiveMarked by the “Stale” Github ActionMarked by the “Stale” Github Action