In this tutorial we’ll look at how to change the font size of text elements in a matplotlib plot.
How to change the font size in matplotlib?
You can change the global font size in matplotlib using rcparams. You can also change the font size of individual components such as tick labels, axes labels, axes titles, etc. The following is the syntax:
import matplotlib.pyplot as plt plt.rcParams.update({'font.size':20})
The above syntax changes the overall font size in matplotlib plots to 20. Note that, the default font size is 10. You can also change the font size of specific components (see the examples below)
Examples
Let’s look at some of the use cases of changing font size in matplotlib. First, we’ll create a simple matplotlib line plot and see the default font size.
import matplotlib.pyplot as plt plt.rcdefaults() # number of employees of A emp_count = [3, 20, 50, 200, 350, 400] year = [2014, 2015, 2016, 2017, 2018, 2019] # plot a line chart plt.plot(year, emp_count, 'o-g') # set axis titles plt.xlabel("Year") plt.ylabel("Employees") # set chart title plt.title("Employee Growth at A") plt.show()
Output:
The above code creates a line plot with text using the default font size.
1. Change the global font size
Let’s change the overall font size of the above plot. Since by default it is 10, we will increase that to 15 to see how the plot appears with a higher font size.
# update the overall font size plt.rcParams.update({'font.size':15}) # plot a line chart plt.plot(year, emp_count, 'o-g') # set axis titles plt.xlabel("Year") plt.ylabel("Employees") # set chart title plt.title("Employee Growth at A") plt.show()
Output:
Introductory ⭐
- Harvard University Data Science: Learn R Basics for Data Science
- Standford University Data Science: Introduction to Machine Learning
- UC Davis Data Science: Learn SQL Basics for Data Science
- IBM Data Science: Professional Certificate in Data Science
- IBM Data Analysis: Professional Certificate in Data Analytics
- Google Data Analysis: Professional Certificate in Data Analytics
- IBM Data Science: Professional Certificate in Python Data Science
- IBM Data Engineering Fundamentals: Python Basics for Data Science
Intermediate ⭐⭐⭐
- Harvard University Learning Python for Data Science: Introduction to Data Science with Python
- Harvard University Computer Science Courses: Using Python for Research
- IBM Python Data Science: Visualizing Data with Python
- DeepLearning.AI Data Science and Machine Learning: Deep Learning Specialization
Advanced ⭐⭐⭐⭐⭐
- UC San Diego Data Science: Python for Data Science
- UC San Diego Data Science: Probability and Statistics in Data Science using Python
- Google Data Analysis: Professional Certificate in Advanced Data Analytics
- MIT Statistics and Data Science: Machine Learning with Python - from Linear Models to Deep Learning
- MIT Statistics and Data Science: MicroMasters® Program in Statistics and Data Science
🔎 Find Data Science Programs 👨💻 111,889 already enrolled
Disclaimer: Data Science Parichay is reader supported. When you purchase a course through a link on this site, we may earn a small commission at no additional cost to you. Earned commissions help support this website and its team of writers.
You can see that the overall font size of the line chart is now considerably bigger. The tick labels, axis titles, plot title all are comparatively bigger than in the default plot.
2. Change font size of the tick labels
You can also set the sizes of individual elements in a matplotlib plot instead of changing the font size of the entire plot. To change the font size of only the tick labels for both the axes:
# reset the plot configurations to default plt.rcdefaults() # change the fontsize of the xtick and ytick labels plt.rc('xtick', labelsize=15) plt.rc('ytick', labelsize=15) # plot a line chart plt.plot(year, emp_count, 'o-g') # set axis titles plt.xlabel("Year") plt.ylabel("Employees") # set chart title plt.title("Employee Growth at A") plt.show()
Output:
Note that first, we’re using the rcdefaults() function to reset the matplotlib configurations to their defaults, and then we’re customizing our plot. You can see that the labels on the x-axis (2014, 2015, …) and the y-axis (0, 100, …) have a comparatively larger font size.
3. Change font size of the axes labels
Similarly, you can also change the size of the axes labels specifically without changing other font sizes.
# reset the plot configurations to default plt.rcdefaults() # change the fontsize of axes lables plt.rc('axes', labelsize=15) # plot a line chart plt.plot(year, emp_count, 'o-g') # set axis titles plt.xlabel("Year") plt.ylabel("Employees") # set chart title plt.title("Employee Growth at A") plt.show()
Output:
You can see that the axis labels “Employees” and “Year” have a larger font size compared to other text components of the plot.
4. Change font size of the axes title
You can also change the size of the axes title specifically without changing other font sizes.
# reset the plot configurations to default plt.rcdefaults() # change the fontsize of axes title plt.rc('axes', titlesize=20) # plot a line chart plt.plot(year, emp_count, 'o-g') # set axis titles plt.xlabel("Year") plt.ylabel("Employees") # set chart title plt.title("Employee Growth at A") plt.show()
Output:
You can see that the axes title is quite large compared to the axes labels and the tick labels.
With this, we come to the end of this tutorial. The code examples and results presented in this tutorial have been implemented in a Jupyter Notebook with a python (version 3.8.3) kernel having matplotlib version 3.2.2
Subscribe to our newsletter for more informative guides and tutorials.
We do not spam and you can opt out any time.
Tutorials on matplotlib –
- Change Background Color of Plot in Matplotlib
- Change Font Size of elements in a Matplotlib plot
- Matplotlib – Save Plot as a File
- Change Size of Figures in Matplotlib
- Plot a Bar Chart using Matplotlib
- Plot a Pie Chart with Matplotlib
- Plot Histogram in Python using Matplotlib
- Create a Scatter Plot in Python with Matplotlib
- Plot a Line Chart in Python with Matplotlib
- Save Matplotlib Plot with Transparent Background
- Change Font Type in Matplotlib plots