Я обнаружил, что не могу получить оси с автомасштабированием, чтобы работать на 1-й оси после создания вторых осей с использованием doublex. Ожидается ли это?Оси оси Matplotlib не работают после doublex()
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(0, 10, 0.1)
y1 = 0.05 * x**2
y2 = -1 *y1
fig, axL = plt.subplots() # Make Left Axes
axR = axL.twinx() # Make Left Axes
axL.plot(x, y1, 'g-') # Plot on Left
axL.grid()
axL.autoscale(enable=True, axis=u'both', tight=False)
plt.show()
# Do some stuff then later plot on axR
Когда я бегу выше код он autoscales в у-направлении правильно на левых осей (от 0 до 5), но изменяет масштаб по оси Х до +/- 0,06 вместо правильного 0 до 10. Однако, как только axR больше не будет пустым и что-то построено на axR, он ведет себя так, как я ожидал.
Это только пример того, как я впервые столкнулся с этой проблемой в более сложном графическом интерфейсе PyQT4, который позволяет пользователю создавать несколько подзаговоров & комбинаций влево/вправо. Поскольку пользователь - это тот, который вручную контролирует порядок создания сюжета, возможно, чтобы приведенная выше ситуация представилась.
Есть ли способ автомасштабирования работать с пустыми двойными правыми осями. Или Xlimit просто должен быть установлен вручную?
FYI, я использую Python 3.4 как часть Anaconda v2.0.1 с Matplotlib v1.3.1
Спасибо.
Спасибо! Я тестировал это после обновления matplotlib на своей персональной машине, и он работал, как ожидалось. К сожалению, на работе все управляется конфигурацией, поэтому мне нужно будет убедиться, могу ли я убедить их сделать то же самое. –