Object Hierarchy
One important, big-picture concept for matplotlib is its object hierarchy. If you’ve ever worked through an introductory matplotlib tutorial, you may have started with a little bit of code that looks like this:
plt.plot([1,2,3,4],[1,4,9,16])
This code plots a straight line. The problem is that this small amount of code hides the fact that a plot like this is really made up of a bunch of individual objects, and those objects contain their own objects. It’s a hierarchy of objects that all come together to make the beautiful graphics you’ll see in this course.
00:00 One important, big picture Matplotlib concept is its object hierarchy. If you’ve ever worked through a basic Matplotlib tutorial, you’ve probably started with a little bit of code that looks like this.
00:14 This code plots a straight line. The problem is, this little amount of code hides the fact that a plot like this is really made up of a bunch of individual objects, and those objects contain their own objects.
00:30 It’s a hierarchy of objects that all come together in order to make the beautiful looking graphics we’ll see in a little bit.
00:39
The outermost object in the Matplotlib graphic is called the Figure. This represents basically your entire window, which you can move around and resize. Inside the Figure object are one or more Axes—spelled with an e, not to be confused with Axis, spelled with an i. Axes can represent a single graphic, like a scatter plot or a histogram. Inside of that is one or more Axis, like the XAxis or YAxis, and probably a title as well as lots of little points.
01:20
You can dig even deeper and get each tick mark or label, which belongs to either the XAxis or YAxis object. We can say that the tick mark belongs to the Axis object, which belongs to the Axes, which belongs to the Figure.
01:38
This image here shows just how many objects make up a graphic in Matplotlib. Just remember: the XAxis or YAxis, collectively known as axes, belongs to an Axes object. And now you understand why Matplotlib can be confusing.
Become a Member to join the conversation.