How to Plot Charts in Python with Matplotlib. You generate a huge amount of data on a daily basis. A critical part of data analysis is visualization. A variety of graphing tools have developed over the past few years
Given the popularity of Python as a language for data analysis, this tutorial focuses on creating graphs using a popular Python library — Matplotlib.
Matplotlib is a huge library, which can be a bit overwhelming for a beginner — even if one is fairly comfortable with Python. While it is easy to generate a plot using a few lines of code, it may be difficult to comprehend what actually goes on in the back-end of this library. This tutorial explains the core concepts of Matplotlib so that one can explore its full potential.
Let’s get started!Prerequisites
The library that we will use in this tutorial to create graphs is Python’s
matplotlib. This post assumes you are using version
3.0.3. To install it, run the following
pip command in the terminal.
pip install matplotlib==3.0.3
To verify the version of the library that you have installed, run the following commands in the Python interpreter.
>>> import matplotlib >>> print(matplotlib.__version__) '3.0.3'
If you are using Jupyter notebooks, you can display Matplotlib graphs inline using the following magic command.
During the initial phases of its development, Mathworks’ MATLAB influenced John Hunter, the creator of Matplotlib. There is one key difference between the use of commands in MATLAB and Python. In MATLAB, all functions are available at the top level. Essentially, if you imported everthing from
matplotlib.pylab, functions such as
plot() would be available to use.
This feature was convenient for those who were accustomed to MATLAB. In Python, though, this could potentially create a conflict with other functions.
Therefore, it is a good practice to use the
from matplotlib import pyplot as plt
All functions such as
plot() are available within
pyplot. You can use the same
plot() function using
plt.plot() after the import earlier.
The Matplotlib documentation describes the anatomy of a plot, which is essential in building an understanding of various features of the library.
The major parts of a Matplotlib plot are as follows:
Each element of a plot can be manipulated in Matplotlib’s, as we will see later.
Without further delay, let’s create our first plot!Create a Plot
Creating a plot is not a difficult task. First, import the
pyplot module. Although there is no convention, it is generally imported as a shorter form &mdash
plt. Use the
.plot() method and provide a list of numbers to create a plot. Then, use the
.show() method to display the plot.
from matplotlib import pyplot as plt plt.plot([0,1,2,3,4]) plt.show()
Notice that Matplotlib creates a line plot by default. The numbers provided to the
.plot() method are interpreted as the y-values to create the plot. Here is the documentation of the
.plot() method for you to further explore.
Now that you have successfully created your first plot, let us explore various ways to customize your plots in Matplotlib.Customize Plot
Let us discuss the most popular customizations in your Matplotlib plot. Each of the options discussed here are methods of
pyplot that you can invoke to set the parameters.
title: Sets the title of the chart, which is passed as an argument.
ylabel: Sets the label of the Y axis.
xlabelcan be used to set the label of the X axis.
yticks: Sets which ticks to show on the Y axis.
xticksis the corresponding option for showing ticks on the X axis.
legend: Displays the legend on the plot. The
locargument of the
.legend()method sets the position of the legend on the graph. The
bestoption for the
locarguments lets Matplotlib decide the least intrusive position of the legend on the figure.
Let us use these options in our plot.
plt.plot([0,1,2,3,4], label='y = x') plt.title('Y = X Straight Line') plt.ylabel('Y Axis') plt.yticks([1,2,3,4]) plt.legend(loc = 'best') plt.show()
Here is the output of the code above. Notice that a title has appeared in the figure, the Y axis is labelled, the number of ticks on the Y axis are lesser than those in the X axis and a legend is shown on the top left corner.
After tinkering with the basic options of a plot, let’s create multiple plots in same figure. Let us try to create two straight lines in our plot.
To achieve this, use the
.plot() method twice with different data sets. You can set the label for each line plot using the
label argument of the
.plot() method to make the code shorter.
plt.plot([0,1,2,3,4], label='y = x') plt.plot([0,2,4,6,8], label='y = 2x') plt.title('Two Straight Lines') plt.legend(loc = 'best') plt.show()
Next, let’s try to create a different type of plot. To create a scatter plot of points on the XY plane, use the
plt.scatter([1,2,3,4], [5,1,4,2]) plt.show()
Here is what the scatter plot looks like.
A number of other plots can be created on Matplotlib. You can use the
.hist() method to create a histogram. You can add multiple plots to a figure using the
.subplot() method. You can even create a vector path using the
path module of
After exploring various options while creating plots with Matplotlib, the next step is to export the plots that you have created. To save a figure as an image, you can use the
.savefig() method. The filename with the filepath should be provided as an argument to this method.
While the documentation for
savefig lists various arguments, the two most important ones are listed below:
dpi: This argument is used to set the resolution of the resulting image in DPI (dots per inch).
transparent: if set to True, the background of the figure is transparent.
While the code above saves a single figure, you may need to save multiple figures in a same file. Matplotlib allows you to save multiple figures to a single PDF file using the
PdfPages class. The steps to create a PDF file with multiple plots are listed below:
matplotlib.backends.backend_pdfand initialize it to an empty PDF file.
.figure()class and create the plot. Once the plot is created, use the
.savefig()method of the
PdfPagesclass to save the figure.
To summarize the process, the following code snippet creates a PDF with the two figures that we created above.
from matplotlib.backends.backend_pdf import PdfPages pdf = PdfPages('multipage.pdf') fig1 = plt.figure() plt.plot([0,1,2,3,4]) plt.close() pdf.savefig(fig1) fig2 = plt.figure() plt.plot([0,2,4,6,8]) plt.close() pdf.savefig(fig2) pdf.close()
In this tutorial, we created plots in Python with the
matplotlib library. We discussed the concepts you need to know to understand how Matplotlib works, and set about creating and customizing real plots. And we showed you how to export your plots for use in real-world scenarios, like reports and presentations.
How do you create plots with Python? Let us know in the comments below.
Python GUI Programming Projects using Tkinter and Python 3
Learn Hands-On Python Programming By Creating Projects, GUIs and Graphics
Python is a dynamic modern object -oriented programming language
It is easy to learn and can be used to do a lot of things both big and small
Python is what is referred to as a high level language
Python is used in the industry for things like embedded software, web development, desktop applications, and even mobile apps!
SQL-Lite allows your applications to become even more powerful by storing, retrieving, and filtering through large data sets easily
If you want to learn to code, Python GUIs are the best way to start!
I designed this programming course to be easily understood by absolute beginners and young people. We start with basic Python programming concepts. Reinforce the same by developing Project and GUIs.
The Python coding language integrates well with other platforms – and runs on virtually all modern devices. If you’re new to coding, you can easily learn the basics in this fast and powerful coding environment. If you have experience with other computer languages, you’ll find Python simple and straightforward. This OSI-approved open-source language allows free use and distribution – even commercial distribution.
When and how do I start a career as a Python programmer?
In an independent third party survey, it has been revealed that the Python programming language is currently the most popular language for data scientists worldwide. This claim is substantiated by the Institute of Electrical and Electronic Engineers, which tracks programming languages by popularity. According to them, Python is the second most popular programming language this year for development on the web after Java.
Python Job Profiles
The median total pay for Python jobs in California, United States is $74,410, for a professional with one year of experience
Below are graphs depicting average Python salary by city
The first chart depicts average salary for a Python professional with one year of experience and the second chart depicts the average salaries by years of experience
Who Uses Python?
This course gives you a solid set of skills in one of today’s top programming languages. Today’s biggest companies (and smartest startups) use Python, including Google, Facebook, Instagram, Amazon, IBM, and NASA. Python is increasingly being used for scientific computations and data analysis
Take this course today and learn the skills you need to rub shoulders with today’s tech industry giants. Have fun, create and control intriguing and interactive Python GUIs, and enjoy a bright future! Best of Luck
Who is the target audience?
Anyone who wants to learn to code
For Complete Programming Beginners
For People New to Python
This course was designed for students with little to no programming experience
People interested in building Projects
Anyone looking to start with Python GUI development
Access to a computer
Download Python (FREE)
Should have an interest in programming
Interest in learning Python programming
Install Python 3.6 on your computer
What will you learn
Build Python Graphical User Interfaces(GUI) with Tkinter
Be able to use the in-built Python modules for their own projects
Use programming fundamentals to build a calculator
Use advanced Python concepts to code
Build Your GUI in Python programming
Use programming fundamentals to build a Project
Signup Login & Registration Programs
Job Interview Preparation Questions
& Much More
Guide to Python Programming Language
The course will lead you from beginning level to advance in Python Programming Language. You do not need any prior knowledge on Python or any programming language or even programming to join the course and become an expert on the topic.
The course is begin continuously developing by adding lectures regularly.
Please see the Promo and free sample video to get to know more.
Hope you will enjoy it.
An Enthusiast Mind
Basic Knowledge To Use Computer
What will you learn
Will Be Expert On Python Programming Language
Build Application On Python Programming Language
Python Programming Tutorials For Beginners
Hello and welcome to brand new series of wiredwiki. In this series i will teach you guys all you need to know about python. This series is designed for beginners but that doesn't means that i will not talk about the advanced stuff as well.
As you may all know by now that my approach of teaching is very simple and straightforward.In this series i will be talking about the all the things you need to know to jump start you python programming skills. This series is designed for noobs who are totally new to programming, so if you don't know any thing about
programming than this is the way to go guys Here is the links to all the videos that i will upload in this whole series.
In this video i will talk about all the basic introduction you need to know about python, which python version to choose, how to install python, how to get around with the interface, how to code your first program. Than we will talk about operators, expressions, numbers, strings, boo leans, lists, dictionaries, tuples and than inputs in python. With
Lots of exercises and more fun stuff, let's get started.
Download free Exercise files.
Who is the target audience?
First time Python programmers
Students and Teachers
IT pros who want to learn to code
Aspiring data scientists who want to add Python to their tool arsenal
Students should be comfortable working in the PC or Mac operating system
What will you learn
know basic programming concept and skill
build 6 text-based application using python
be able to learn other programming languages
be able to build sophisticated system using python in the future