400 votes

Matplotlib rend les étiquettes de coutil plus petites

Dans une figure avec matplotlib je voudrais faire la taille de la police pour les étiquettes de tick en utilisant

 ax1.set_xticklabels(
 

plus petite. Comment puis-je?

Et dernière partie, comment peut-on la faire pivoter d’horizontale à verticale?

676voto

Autiwa Points 801

Il est plus simple en fait. Je viens de trouver :

 import pylab as pl
# We prepare the plot  
fig = pl.figure(1)
# We define a fake subplot that is in fact only the plot.  
plot = fig.add_subplot(111)

# We change the fontsize of minor ticks label 
plot.tick_params(axis='both', which='major', labelsize=10)
plot.tick_params(axis='both', which='minor', labelsize=8)
 

Cette seule réponse à la taille de l'étiquette fait partie de votre question pensé.

158voto

bernie Points 44206

Veuillez noter que les versions les plus récentes de MPL ont un raccourci pour cette tâche. Un exemple est présenté dans l'autre réponse à cette question: http://stackoverflow.com/a/11386056/42346

Le code ci-dessous est à des fins d'illustration et ne peut pas nécessairement être optimisé.

 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()
 

entrez la description de l'image ici

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X