Wie kann ich in einer Matplotlib-Grafik die Schriftgröße für die Zeckenbeschriftungen mit "ax1.set_xticklabels()" kleiner machen?
Und wie kann man sie von der Horizontalen in die Vertikale drehen?
Es gibt tatsächlich einen einfacheren Weg. Ich habe sie gerade gefunden:
import matplotlib.pyplot as plt
# We prepare the plot
fig, ax = plt.subplots()
# We change the fontsize of minor ticks label
ax.tick_params(axis='both', which='major', labelsize=10)
ax.tick_params(axis='both', which='minor', labelsize=8)
Das beantwortet allerdings nur die Frage nach der Größe des "Labels".
Bitte beachten Sie, dass neuere Versionen von MPL eine Abkürzung für diese Aufgabe haben. Ein Beispiel finden Sie in der anderen Antwort auf diese Frage: https://stackoverflow.com/a/11386056/42346
Der folgende Code dient der Veranschaulichung und muss nicht unbedingt optimiert sein.
import matplotlib.pyplot as plt
import numpy as np
def xticklabels_example():
fig = plt.figure()
x = np.arange(20)
y1 = np.cos(x)
y2 = (x**2)
y3 = (x**3)
yn = (y1,y2,y3)
COLORS = ('b','g','k')
for i,y in enumerate(yn):
ax = fig.add_subplot(len(yn),1,i+1)
ax.plot(x, y, ls='solid', color=COLORS[i])
if i != len(yn) - 1:
# all but last
ax.set_xticklabels( () )
else:
for tick in ax.xaxis.get_major_ticks():
tick.label.set_fontsize(14)
# specify integer or one of preset strings, e.g.
#tick.label.set_fontsize('x-small')
tick.label.set_rotation('vertical')
fig.suptitle('Matplotlib xticklabels Example')
plt.show()
if __name__ == '__main__':
xticklabels_example()
Sie können auch Parameter für die Etikettenanzeige wie die Schriftgröße mit einer Zeile wie dieser ändern:
zed = [tick.label.set_fontsize(14) for tick in ax.yaxis.get_major_ticks()]