В Matplotlib я делаю пунктирные линии сетки следующим образом:
fig = pylab.figure()
ax = fig.add_subplot(1,1,1)
ax.yaxis.grid(color='gray', linestyle='dashed')
однако я не могу понять, как (или даже если это возможно) нарисовать линии сетки за другими элементами графика, такими как столбцы. Изменение порядка добавления сетки по сравнению с добавлением других элементов не имеет значения.
Можно ли сделать так, чтобы линии сетки появлялись за всем остальным?
python
matplotlib
grid
Андрей
источник
источник
ax.set_axisbelow(True)
до сих пор работает. Также хорошо для вывода в pdf ...ax.set_axisbelow(True)
что это будет дефолт ...Ответы:
Согласно этому - http://matplotlib.1069221.n5.nabble.com/axis-elements-and-zorder-td5346.html - вы можете использовать
Axis.set_axisbelow(True)
(В настоящее время я устанавливаю matplotlib впервые, поэтому понятия не имею, правильно ли это - я только что нашел его, выполнив поиск в Google "сетка порядка z matplotlib" - "порядок z" обычно используется для описания такого рода вещей (z - ось "вне страницы"))
источник
Мне было непонятно, как применить ответ Эндрю Кука, поэтому это полное решение, основанное на этом:
источник
Если вы хотите проверить настройку для всех цифр, вы можете установить
или
Он работает для Matplotlib> = 2.0.
источник
У меня была такая же проблема, и работало следующее:
Увеличьте
3
до большего значения, если это не работает.источник