Simple Matplotlib Axisline

PythonPythonBeginner
Practice Now

This tutorial is from open-source community. Access the source code

Introduction

In this lab, we will learn how to create a simple axis line using Matplotlib. We will use the mpl_toolkits.axisartist.axislines library to create an axis line with x and y axis labels, and a y2 axis label on the right side. We will also learn how to hide the top and right axes, and make the x axis line visible at y=0.

VM Tips

After the VM startup is done, click the top left corner to switch to the Notebook tab to access Jupyter Notebook for practice.

Sometimes, you may need to wait a few seconds for Jupyter Notebook to finish loading. The validation of operations cannot be automated because of limitations in Jupyter Notebook.

If you face issues during learning, feel free to ask Labby. Provide feedback after the session, and we will promptly resolve the problem for you.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL matplotlib(("`Matplotlib`")) -.-> matplotlib/BasicConceptsGroup(["`Basic Concepts`"]) python(("`Python`")) -.-> python/BasicConceptsGroup(["`Basic Concepts`"]) python(("`Python`")) -.-> python/DataStructuresGroup(["`Data Structures`"]) python(("`Python`")) -.-> python/ModulesandPackagesGroup(["`Modules and Packages`"]) python(("`Python`")) -.-> python/DataScienceandMachineLearningGroup(["`Data Science and Machine Learning`"]) matplotlib/BasicConceptsGroup -.-> matplotlib/importing_matplotlib("`Importing Matplotlib`") matplotlib/BasicConceptsGroup -.-> matplotlib/figures_axes("`Understanding Figures and Axes`") python/BasicConceptsGroup -.-> python/booleans("`Booleans`") python/DataStructuresGroup -.-> python/lists("`Lists`") python/DataStructuresGroup -.-> python/tuples("`Tuples`") python/ModulesandPackagesGroup -.-> python/importing_modules("`Importing Modules`") python/ModulesandPackagesGroup -.-> python/using_packages("`Using Packages`") python/DataScienceandMachineLearningGroup -.-> python/data_visualization("`Data Visualization`") subgraph Lab Skills matplotlib/importing_matplotlib -.-> lab-48937{{"`Simple Matplotlib Axisline`"}} matplotlib/figures_axes -.-> lab-48937{{"`Simple Matplotlib Axisline`"}} python/booleans -.-> lab-48937{{"`Simple Matplotlib Axisline`"}} python/lists -.-> lab-48937{{"`Simple Matplotlib Axisline`"}} python/tuples -.-> lab-48937{{"`Simple Matplotlib Axisline`"}} python/importing_modules -.-> lab-48937{{"`Simple Matplotlib Axisline`"}} python/using_packages -.-> lab-48937{{"`Simple Matplotlib Axisline`"}} python/data_visualization -.-> lab-48937{{"`Simple Matplotlib Axisline`"}} end

Import Libraries

We start by importing the necessary libraries. We will be using Matplotlib and the mpl_toolkits.axisartist.axislines library.

import matplotlib.pyplot as plt
from mpl_toolkits.axisartist.axislines import AxesZero

Create Figure and Subplot

Next, we create a figure and add a subplot with AxesZero. This creates an axis line with x and y axis labels, but no tick marks or grids.

fig = plt.figure()
fig.subplots_adjust(right=0.85)
ax = fig.add_subplot(axes_class=AxesZero)

Hide Top and Right Axes

We will now hide the top and right axes, since we only need the left and bottom axes.

ax.axis["right"].set_visible(False)
ax.axis["top"].set_visible(False)

Make X Axis Line Visible at Y=0

We will now make the x axis line visible at y=0. This is done by setting the xzero axis to visible.

ax.axis["xzero"].set_visible(True)
ax.axis["xzero"].label.set_text("Axis Zero")

Set Axis Limits and Labels

We will now set the y axis limits to (-2, 4) and set the x and y axis labels.

ax.set_ylim(-2, 4)
ax.set_xlabel("Label X")
ax.set_ylabel("Label Y")

Create Y2 Axis

Finally, we will create a new y2 axis on the right side of the plot with an offset of (20, 0) and label it.

ax.axis["right2"] = ax.new_fixed_axis(loc="right", offset=(20, 0))
ax.axis["right2"].label.set_text("Label Y2")

Summary

We have learned how to create a simple axis line using Matplotlib. We first imported the necessary libraries, then created a figure and subplot with AxesZero. We then hid the top and right axes, made the x axis line visible at y=0, set the axis limits and labels, and finally created a new y2 axis on the right side of the plot.

Other Python Tutorials you may like