Working extensively with Matplotlib, I’ve learned that controlling the aesthetics of your plots can make a huge difference in how your data communicates.
One of the most important yet often overlooked aspects is customizing the tick parameters, especially font size and color. These tweaks help your charts stand out and improve readability, which is crucial when presenting data to stakeholders or publishing reports.
In this article, I will share my hands-on experience and guide you through multiple methods to customize the font size and color of ticks in Matplotlib using Python.
How to Change Tick Font Size in Matplotlib
Adjusting the font size of ticks is a common task when you want your plot to be clear and legible. I usually prefer larger fonts for presentations or reports to ensure the audience can easily read the axis labels and ticks.
Method 1: Use tick_params to Change Font Size
The tick_params() function is a versatile way to control the appearance of ticks on both axes. You can set the font size for the tick labels directly with this method.
Here’s a simple example using US sales data (fictional) to demonstrate:
import matplotlib.pyplot as plt
# Sample sales data for US regions
regions = ['Northeast', 'Midwest', 'South', 'West']
sales = [250, 150, 300, 200]
plt.bar(regions, sales)
plt.title('Quarterly Sales by Region')
# Change tick font size using tick_params
plt.tick_params(axis='x', labelsize=14) # X-axis tick font size
plt.tick_params(axis='y', labelsize=14) # Y-axis tick font size
plt.show()You can refer to the screenshot below to see the output.

In this example, I set the font size of both x and y-axis ticks to 14. You can adjust this number to fit your specific needs.
Method 2: Use set_tick_params on Axis Objects
If you want more control and prefer object-oriented Matplotlib style, you can use the set_tick_params() method on axis objects.
Here’s how I use it:
fig, ax = plt.subplots()
ax.bar(regions, sales)
ax.set_title('Quarterly Sales by Region')
# Set tick font size on x and y axes
ax.xaxis.set_tick_params(labelsize=16)
ax.yaxis.set_tick_params(labelsize=16)
plt.show()You can refer to the screenshot below to see the output.

This method is particularly useful when you work with multiple subplots or want to customize ticks on specific axes without affecting others.
How to Change Tick Font Color in Matplotlib
Changing the tick font color can emphasize or de-emphasize parts of your plot. For instance, highlighting specific regions in a US sales chart can be visually impactful.
Method 1: Use tick_params to Change Font Color
Just like with font size, tick_params() allows you to change the color of tick labels easily.
Here’s an example:
plt.bar(regions, sales)
plt.title('Quarterly Sales by Region')
# Change tick label color to dark green
plt.tick_params(axis='x', colors='darkgreen')
plt.tick_params(axis='y', colors='darkgreen')
plt.show()You can refer to the screenshot below to see the output.

Using colors in tick_params applies the color to both the tick marks and the tick labels.
Method 2: Use set_tick_params with Specific Label Colors
For finer control, especially if you want to style ticks differently on each axis, use the axis object’s set_tick_params() method.
Example:
fig, ax = plt.subplots()
ax.bar(regions, sales)
ax.set_title('Quarterly Sales by Region')
# Set tick label color to blue on x-axis and red on y-axis
ax.xaxis.set_tick_params(colors='blue')
ax.yaxis.set_tick_params(colors='red')
plt.show()You can refer to the screenshot below to see the output.

This method helps when you want to visually differentiate the axes, which can be useful in complex plots.
Additional Tips for Customizing Matplotlib Ticks in Python
While font size and color are crucial, you can also customize tick direction, width, and length using tick_params. For example, setting ticks to point inward or outward can make your plots look more professional.
Here’s a quick snippet demonstrating multiple customizations:
fig, ax = plt.subplots()
ax.bar(regions, sales)
ax.set_title('Quarterly Sales by Region')
ax.tick_params(axis='x', labelsize=12, colors='purple', direction='inout', length=10, width=2)
ax.tick_params(axis='y', labelsize=12, colors='orange', direction='in', length=8, width=1.5)
plt.show()Experimenting with these parameters can help you find the perfect look for your charts.
Customizing tick parameters in Matplotlib is an easy yet powerful way to improve your Python visualizations. By adjusting font size and color, you make your charts more readable and visually appealing, which is essential when sharing data insights with a US audience or any other group.
If you’re serious about data visualization in Python, mastering these small details will set your work apart. I encourage you to try these methods with your own datasets and explore further customizations using the Matplotlib documentation.
You may also like to read:
- Customize Matplotlib X-Axis Label Color and Size in Python
- Python Matplotlib X-Axis Label Spacing and Removing Labels
- Matplotlib X-Axis Labels in Subplots with Python
- Rotate Matplotlib X-Axis Labels in Python

I am Bijay Kumar, a Microsoft MVP in SharePoint. Apart from SharePoint, I started working on Python, Machine learning, and artificial intelligence for the last 5 years. During this time I got expertise in various Python libraries also like Tkinter, Pandas, NumPy, Turtle, Django, Matplotlib, Tensorflow, Scipy, Scikit-Learn, etc… for various clients in the United States, Canada, the United Kingdom, Australia, New Zealand, etc. Check out my profile.