Gibt es eine Möglichkeit, die Farbe einer Achse (nicht der Zecken) in matplotlib zu ändern? Ich habe in den Dokumenten nach Axes, Axis und Artist gesucht, aber kein Glück. Die Matplotlib-Galerie hat auch keinen Hinweis. Irgendeine Idee?
Antworten:
Wenn Sie Figuren verwenden, können Sie die Rückenfarbe leicht ändern mit:
ax.spines['bottom'].set_color('#dddddd')
ax.spines['top'].set_color('#dddddd')
ax.spines['right'].set_color('red')
ax.spines['left'].set_color('red')
Verwenden Sie Folgendes, um nur die Häkchen zu ändern:
ax.tick_params(axis='x', colors='red')
ax.tick_params(axis='y', colors='red')
Und folgendes, um nur das Label zu ändern:
ax.yaxis.label.set_color('red')
ax.xaxis.label.set_color('red')
Und zum Schluss der Titel:
ax.title.set_color('red')
ax.tick_params(axis='x', colors='red')
scheint die Farbe sowohl der Zecke als auch des Etiketts zu ändern ...
ax.yaxis.label.set_color('grey')
, dass nur die Zecken von y1
, y2
um ihre Farbe zu ändern, und die anderen unverändert bleiben?
set_ticklabels()
und übergeben kwarg
color
. Wie so:ax.xaxis.set_ticklabels([0.0,0.2,0.4,0.6,0.8,1.0], color = 'k')
Für die Aufzeichnung habe ich es so geschafft, dass es funktioniert:
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')
Sie können dies tun, indem Sie die Standard-RC-Einstellungen anpassen.
import matplotlib
from matplotlib import pyplot as plt
matplotlib.rc('axes',edgecolor='r')
plt.plot([0, 1], [0, 1])
plt.savefig('test.png')
ax.tick_params(axis='x', colors='red', which='both')
- which = "both" ändert sowohl die Haupt- als auch die Neben-Tick-Farbe.