Matplotlib make tick labels font size smaller Matplotlib make tick labels font size smaller python python

Matplotlib make tick labels font size smaller


There is a simpler way actually. I just found:

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)

This only answers to the size of label part of your question though.


To specify both font size and rotation at the same time, try this:

plt.xticks(fontsize=14, rotation=90)


Please note that newer versions of MPL have a shortcut for this task. An example is shown in the other answer to this question: https://stackoverflow.com/a/11386056/42346

The code below is for illustrative purposes and may not necessarily be optimized.

import matplotlib.pyplot as pltimport numpy as npdef 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()

enter image description here