Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Matplotlib for Python Developers
Matplotlib for Python Developers

Matplotlib for Python Developers: Effective techniques for data visualization with Python , Second Edition

Arrow left icon
Profile Icon Aldrin Yim Profile Icon Claire Chung Profile Icon Allen Yu
Arrow right icon
€8.99 €26.99
Full star icon Full star icon Empty star icon Empty star icon Empty star icon 2 (2 Ratings)
eBook Apr 2018 300 pages 2nd Edition
eBook
€8.99 €26.99
Paperback
€32.99
Subscription
Free Trial
Renews at €18.99p/m
Arrow left icon
Profile Icon Aldrin Yim Profile Icon Claire Chung Profile Icon Allen Yu
Arrow right icon
€8.99 €26.99
Full star icon Full star icon Empty star icon Empty star icon Empty star icon 2 (2 Ratings)
eBook Apr 2018 300 pages 2nd Edition
eBook
€8.99 €26.99
Paperback
€32.99
Subscription
Free Trial
Renews at €18.99p/m
eBook
€8.99 €26.99
Paperback
€32.99
Subscription
Free Trial
Renews at €18.99p/m

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Table of content icon View table of contents Preview book icon Preview Book

Matplotlib for Python Developers

Getting Started with Matplotlib

Now that we are familiar with the capabilities and functionalities of Matplotlib and all geared up with the Python environment, let's go straight ahead and create our first plots.

In this chapter, we will learn how to:

  • Draw basic line and scatter plots
  • Overlay multiple data series on the same plots
  • Adjust grids, axes, and labels
  • Add a title and legend
  • Save created plots as separate files
  • Configure Matplotlib global settings

Loading data

Before we start plotting, we need to import the data we intend to plot and get familiar with basic plotting commands in Matplotlib. Let's start going through these basic commands!

While working on data visualization projects, we need to ensure that we have basic familiarity and understanding of the tools used for data processing. Before we begin, let's briefly revise the most common data structures you will encounter when handling data with Python.

List

This is the most basic Python data structure; it stores a collection of values. While you can store any data type as an element in a Python list, for our purpose of data visualization, we mostly handle lists of numerical values as data input, or at, most...

Our first plots with Matplotlib

We have just revised the basic ways of data handling with Python. Without further ado, let's create our first "Hello World!" plot example.

Importing the pyplot

To create a pandas DataFrame from objects such as lists and ndarrays, you may call:

import pandas as pd

To start creating Matplotlib plots, we first import the plotting API pyplot by entering this command:

import matplotlib.pyplot as plt

This will start your plotting routine.

In Jupyter Notebook, you need to import modules once you begin a notebook session after starting the kernel.

Line plot

...

Adjusting axes, grids, labels, titles, and legends

We have just learned how to turn numerical values into dots and lines with Matplotlib. By default, Matplotlib optimizes the display by calculating various values in the background, such as the reasonable axis range and font sizes. However, good visualization often requires more design input to suit our custom data visualization needs and purpose. Moreover, text labels are needed to make figures informative in many cases. In the following sections, we will demonstrate the methods to adjust these elements.

Adjusting axis limits

While Matplotlib automatically chooses the range of x and y axis limits to spread data onto the whole plotting area, sometimes we want some adjustment...

A complete example

To get further acquainted with Matplotlib functions, let us plot a multiline plot with axes, labels, title, and legend configured in one single snippet.

In this example, we take real-world data from the World Bank on agriculture. As the world population continues to grow, food security continues to be an important global issue. Let us have a look at the production data of a few major crops in the recent decade by plotting a multiline plot with the following code:

Data source: https://data.oecd.org/agroutput/crop-production.htm
OECD (2017), Crop production (indicator). doi: 10.1787/49a4e677-en (Accessed on 25 December 2017)
# Import relevant modules import pandas as pd import matplotlib.pyplot as plt # Import dataset crop_prod = pd.read_csv('OECD-THND_TONNES.txt',delimiter='\t') years = crop_prod[crop_prod['Crop']=='SOYBEAN...

Saving plots to a file

To save a figure, we put plt.savefig(outputpath) at the end of plotting commands. It can be used in place of plt.show(), to directly save the figure without displaying it.

If you want to save the figure as a file as well as display it on the notebook output, you can call both plt.savefig() and plt.show().

Reversing the order can result in the plot elements being cleaned up, leaving a blank canvas for the saved figure file.

Setting the output format

plt.savefig() automatically detects the file extension of the specified output path, and generates the corresponding file format if it is supported. If no file extension is specified in the input, a PNG format file would be obtained as output with...

Configuring Matplotlib

We have learned to tweak a few major elements in a Matplotlib plot. When we recurrently generate figures of similar style, it would be nice to have a way to store and apply the persistent global settings. Matplotlib offers a few options for configuration.

Configuring within Python code

To keep settings throughout the current session, we can execute matplotlib.rcParams to override configuration file settings.

For instance, we can set the font size of all text in plots to 18 with the following:

matplotlib.rcParams['font.size'] = 18

Alternatively we can call the matplotlib.rc() function. As matplotlib.rc() just changes one property, to change multiple settings, we can use the function matplotlib...

Summary

Congratulations! We are now familiar with the basic plotting techniques using Matplotlib syntax! Remember, the success of a data visualization project relies heavily upon making appealing visuals.

In the next chapters, we will learn how to beautify our plots and select the right kind of plot that communicates our data effectively!

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Perform effective data visualization with Matplotlib and get actionable insights from your data
  • Design attractive graphs, charts, and 2D plots, and deploy them to the web
  • Get the most out of Matplotlib in this practical guide with updated code and examples

Description

Python is a general-purpose programming language increasingly being used for data analysis and visualization. Matplotlib is a popular data visualization package in Python used to design effective plots and graphs. This is a practical, hands-on resource to help you visualize data with Python using the Matplotlib library. Matplotlib for Python Developers, Second Edition shows you how to create attractive graphs, charts, and plots using Matplotlib. You will also get a quick introduction to third-party packages, Seaborn, Pandas, Basemap, and Geopandas, and learn how to use them with Matplotlib. After that, you’ll embed and customize your plots in third-party tools such as GTK+3, Qt 5, and wxWidgets. You’ll also be able to tweak the look and feel of your visualization with the help of practical examples provided in this book. Further on, you’ll explore Matplotlib 2.1.x on the web, from a cloud-based platform using third-party packages such as Django. Finally, you will integrate interactive, real-time visualization techniques into your current workflow with the help of practical real-world examples. By the end of this book, you’ll be thoroughly comfortable with using the popular Python data visualization library Matplotlib 2.1.x and leveraging its power to build attractive, insightful, and powerful visualizations.

Who is this book for?

This book is essentially for anyone who wants to create intuitive data visualizations using the Matplotlib library. If you’re a data scientist or analyst and wish to create attractive visualizations using Python, you’ll find this book useful. Some knowledge of Python programming is all you need to get started.

What you will learn

  • Create 2D and 3D static plots such as bar charts, heat maps, and scatter plots
  • Get acquainted with GTK+3, Qt5, and wxWidgets to understand the UI backend of Matplotlib
  • Develop advanced static plots with third-party packages such as Pandas, GeoPandas, and Seaborn
  • Create interactive plots with real-time updates
  • Develop web-based, Matplotlib-powered graph visualizations with third-party packages such as Django
  • Write data visualization code that is readily expandable on the cloud platform

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Apr 24, 2018
Length: 300 pages
Edition : 2nd
Language : English
ISBN-13 : 9781788628136
Category :
Languages :
Tools :

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Product Details

Publication date : Apr 24, 2018
Length: 300 pages
Edition : 2nd
Language : English
ISBN-13 : 9781788628136
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
€18.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
€189.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts
€264.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total 111.97
Matplotlib for Python Developers
€32.99
Building Serverless Applications with Python
€41.99
Python Deep Learning Cookbook
€36.99
Total 111.97 Stars icon
Banner background image

Table of Contents

10 Chapters
Introduction to Matplotlib Chevron down icon Chevron up icon
Getting Started with Matplotlib Chevron down icon Chevron up icon
Decorating Graphs with Plot Styles and Types Chevron down icon Chevron up icon
Advanced Matplotlib Chevron down icon Chevron up icon
Embedding Matplotlib in GTK+3 Chevron down icon Chevron up icon
Embedding Matplotlib in Qt 5 Chevron down icon Chevron up icon
Embedding Matplotlib in wxWidgets Using wxPython Chevron down icon Chevron up icon
Integrating Matplotlib with Web Applications Chevron down icon Chevron up icon
Matplotlib in the Real World Chevron down icon Chevron up icon
Integrating Data Visualization into the Workflow Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Empty star icon Empty star icon Empty star icon 2
(2 Ratings)
5 star 0%
4 star 0%
3 star 50%
2 star 0%
1 star 50%
d Aug 02, 2018
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
This book is a good introduction to Matplotlib with a few advanced topics, however, almost half of the book is dedicated to embedding matplotlib in various GUIs. This could have been a book by itself and internal functionality of matplotlib, pandas, and seaborn could have been greatly expanded. The authors do a great job of introducing the reader to fundamental matplotlib concepts, but fail to delineate the core of Pyplot vs the use of Axes/Figure. They do not go into detail about how these two are different, how to access similar functions through the Axes object, or even what an Axes object is before using it in the advanced matplotlib section. The coverage of subplots is fairly good, but overall, the book could be improved further.
Amazon Verified review Amazon
bikiteron Nov 06, 2019
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1
I thought this book will be colour printed but this book is not colour printed.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.