Existe-t-il un moyen de changer la couleur d'un axe (pas les tiques) dans matplotlib? J'ai cherché dans les documents Axes, Axis et Artist, mais pas de chance; la galerie matplotlib n'a également aucun indice. Une idée?
Lorsque vous utilisez des figures, vous pouvez facilement changer la couleur de la colonne vertébrale avec:
ax.spines['bottom'].set_color('#dddddd')
ax.spines['top'].set_color('#dddddd')
ax.spines['right'].set_color('red')
ax.spines['left'].set_color('red')
Utilisez ce qui suit pour modifier uniquement les graduations:
ax.tick_params(axis='x', colors='red')
ax.tick_params(axis='y', colors='red')
Et ce qui suit pour ne changer que l'étiquette:
ax.yaxis.label.set_color('red')
ax.xaxis.label.set_color('red')
Et enfin le titre:
ax.title.set_color('red')
Pour mémoire, voici comment j'ai réussi à le faire fonctionner:
fig = pylab.figure()
ax = fig.add_subplot(1, 1, 1)
for child in ax.get_children():
if isinstance(child, matplotlib.spines.Spine):
child.set_color('#dddddd')
Vous pouvez le faire en ajustant les paramètres rc par défaut.
import matplotlib
from matplotlib import pyplot as plt
matplotlib.rc('axes',edgecolor='r')
plt.plot([0, 1], [0, 1])
plt.savefig('test.png')