Matplotlib for Python Developers
eBook - ePub

Matplotlib for Python Developers

Sandro Tosi

Share book
  1. 308 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Matplotlib for Python Developers

Sandro Tosi

Book details
Book preview
Table of contents
Citations

About This Book

In Detail

Providing appealing plots and graphs is an essential part of various fields such as scientific research, data analysis, and so on. Matplotlib, the Python 2D plotting library, is used to produce publication-quality figures in a variety of hardcopy formats and interactive environments across platforms. This book explains creating various plots, histograms, power spectra, bar charts, error charts, scatter-plots and much more using the powerful Matplotlib library to get impressive out-of-the-box results.

This book gives you a comprehensive tour of the key features of the Matplotlib Python 2D plotting library, right from the simplest concepts to the most advanced topics. You will discover how easy it is to produce professional-quality plots when you have this book to hand.

The book introduces the library in steps. First come the basics: introducing what the library is, its important prerequisites (and terminology), installing and configuring Matplotlib, and going through simple plots such as lines, grids, axes, and charts. Then we start with some introductory examples, and move ahead by discussing the various programming styles that Matplotlib allows, and several key features.

Further, the book presents an important section on embedding applications. You will be introduced to three of the best known GUI libraries-GTK+, Qt, and wxWidgets-and presented with the steps to implement to include Matplotlib in an application written using each of them. You will learn through an incremental approach: from a simple example that presents the peculiarities of the GUI library, to more complex ones, using GUI designer tools.

Because the Web permeates all of our activities, a part of the book is dedicated to showing how Matplotlib can be used in a web environment, and another section focuses on using Matplotlib with common Python web frameworks, namely, Pylons and Django. Last, but not least, you will go through real-world examples, where you will see some real situations in which you can use Matplotlib.

This book is a step-by-step tutorial to the Python 2D plotting library Matplotlib, which teaches you from the ground up to advanced levels with plenty of examples, code, and images.

Approach

This is a practical, hands-on book, with a lot of code and images. It presents the real code that generates every image and describes almost every single line of it, so that you know exactly what's going on.

Introductory, descriptive, and theoretical parts are mixed with examples, so that reading and understanding them is easy. All of the examples build gradually with code snippets, their explanations, and plot images where necessary with the complete code and output presented at the end.

Who this book is for

This book is essentially for Python developers who have a good knowledge of Python; no knowledge of Matplotlib is required. You will be creating 2D plots using Matplotlib in no time at all.

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Matplotlib for Python Developers an online PDF/ePUB?
Yes, you can access Matplotlib for Python Developers by Sandro Tosi in PDF and/or ePUB format, as well as other popular books in Computer Science & Information Technology. We have over one million books available in our catalogue for you to explore.

Information

Year
2009
ISBN
9781847197900
Edition
1

Matplotlib for Python Developers

Sandro Tosi


Table of Contents

Matplotlib for Python Developers
Credits
About the Author
About the Reviewers
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Errata
Piracy
Questions
1. Introduction to Matplotlib
Merits of Matplotlib
Matplotlib web sites and online documentation
Output formats and backends
Output formats
Backends
About dependencies
Build dependencies
Installing Matplotlib
Installing Matplotlib on Linux
Installing Matplotlib on Windows
Installing Matplotlib on Mac OS X
Installing Matplotlib using packaged Python distributions
Installing Matplotlib from source code
Testing our installation
Summary
2. Getting Started with Matplotlib
First plots with Matplotlib
Multiline plots
A brief introduction to NumPy arrays
Grid, axes, and labels
Adding a grid
Handling axes
Adding labels
Titles and legends
Adding a title
Adding a legend
A complete example
Saving plots to a file
Interactive navigation toolbar
IPython support
Controlling the interactive mode
Suppressing functions output
Configuring Matplotlib
Configuration files
Configuring through the Python code
Selecting backend from code
Summary
3. Decorate Graphs with Plot Styles and Types
Markers and line styles
Control colors
Specifying styles in multiline plots
Control line styles
Control marker styles
Finer control with keyword arguments
Handling X and Y ticks
Plot types
Histogram charts
Error bar charts
Bar charts
Pie charts
Scatter plots
Polar charts
Navigation Toolbar with polar plots
Control radial and angular grids
Text inside figure, annotations, and arrows
Text inside figure
Annotations
Arrows
Summary
4. Advanced Matplotlib
Object-oriented versus MATLAB styles
A brief introduction to Matplotlib objects
Our first (simple) example of OO Matplotlib
Subplots
Multiple figures
Additional Y (or X) axes
Logarithmic axes
Share axes
Plotting dates
Date formatting
Axes formatting with axes tick locators and formatters
Custom formatters and locators
Text properties, fonts, and LaTeX
Fonts
Using LaTeX formatting
Mathtext
External TeX renderer
Contour plots and image plotting
Contour plots
Image plotting
Summary
5. Embedding Matplotlib in GTK+
A brief introduction to GTK+
Introduction to GTK+ signal system
Embedding a Matplotlib figure in a GTK+ window
Including a navigation toolbar
Real-time plots update
Embedding Matplotlib in a Glade application
Designing the GUI using Glade
Code to use Glade GUI
Summary
6. Embedding Matplotlib in Qt 4
Brief introduction to Qt 4 and PyQt4
Embedding a Matplotlib figure in a Qt window
Including a navigation toolbar
Real-time update of a Matplotlib graph
Embedding Matplotlib in a GUI made with Qt Designer
Designing the GUI using Qt Designer
Code to use the Qt Designer GUI
Introduction to signals and slots
Returning to the example
Summary
7. Embedding Matplotlib in wxWidgets
Brief introduction to wxWidgets and wxPython
Embedding a Matplotlib figure in a wxFrame
Including a navigation toolbar
Real-time plots update
Embedding Matplotlib in a GUI made with wxGlade
Summary
8. Matplotlib for the Web
Matplotlib and CGI
What is CGI
Configuring Apache for CGI execution
Simple CGI example
Matplotlib in a CGI script
Passing parameters to a CGI script
Matplotlib and mod_python
What is mod_python
Apache configuration for mod_python
Matplotlib in a mod_python example
Matplotlib and mod_python's Python Server Pages
Web Frameworks and MVC
Matplotlib and Django
What is Django
Matplotlib in a Django application
Matplotlib and Pylons
What is Pylons
Matplotlib in a Pylons application
Summary
9. Matplotlib in the Real World
Plotting data from a database
Plotting data from the Web
Plotting data by parsing an Apache log file
Plotting data from a CSV file
Plotting extrapolated data using curve fitting
Tools using Matplotlib
NetworkX
Mpmath
Plotting geographical data
First example
Using satellite background
Plot data over a map
Plotting shapefiles with Basemap
Summary
Index

Matplotlib for Python Developers

Copyright © 2009 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, Packt Publishing, nor its dealers or distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: November 2009
Production Reference: 2221009
Published by Packt Publishing Ltd. 32 Lincoln Road Olton Birmingham, B27 6PA, UK.
ISBN 978-1-847197-90-0
www.packtpub.com
Cover Image by Raghuram Ashok ()

Credits

Author
Sandro Tosi
Reviewers
Michael...

Table of contents