Open In App

How to plot data from a text file using Matplotlib?

Last Updated : 23 Jul, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

Perquisites: Matplotlib, NumPy

In this article, we will see how to load data files for Matplotlib. Matplotlib is a 2D Python library used for Date Visualization. We can plot different types of graphs using the same data like:

  • Bar Graph
  • Line Graph
  • Scatter Graph
  • Histogram Graph and many.

In this article, we will learn how we can load data from a file to make a graph using the "Matplotlib" python module. Here we will also discuss two different ways to extract data from a file.  In the First Module, we will discuss extracting data using the inbuilt CVS module and In the Second Module, we will use a third-party "NumPy" Module to extract data from a file. 

Requirement:

A text file from where data should be extracted.  Let the file name = GFG.txt

Method 1: In this method, we will extract data using CSV module to load CVS files.
  
Step 1:

Import all required modules.

Python3
import matplotlib.pyplot as plt
import csv


Step 2: Create X and Y variables to store X-axis data and Y-axis data from a text file.  

Python3
import matplotlib.pyplot as plt
import csv

X = []
Y = []


Step 3: Open text file in read mode. Pass 'file_name' and delimiter in reader function and store returned data in a new variable. 

Python3
import matplotlib.pyplot as plt
import csv

X = []
Y = []

with open('GFG.txt', 'r') as datafile:
    plotting = csv.reader(datafile, delimiter=',')

Step 4: Create a loop, that will append the data in X and Y variable.

Python3
import matplotlib.pyplot as plt
import csv

X = []
Y = []

with open('GFG.txt', 'r') as datafile:
    plotting = csv.reader(datafile, delimiter=',')
    
    for ROWS in plotting:
        X.append(int(ROWS[0]))
        Y.append(int(ROWS[1]))

Step 5: Now pass all the parameter in their respective functions.

Python3
import matplotlib.pyplot as plt
import csv

X = []
Y = []

with open('GFG.txt', 'r') as datafile:
    plotting = csv.reader(datafile, delimiter=',')
    
    for ROWS in plotting:
        X.append(int(ROWS[0]))
        Y.append(int(ROWS[1]))

plt.plot(X, Y)
plt.title('Line Graph using CSV')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

Output:

load from fie line

Method 2: In this method, we will extract data using numpy module to load files. Here you will notice that Step 2,3 and 4 are replaced by np.loadtxt( )

Python3
import matplotlib.pyplot as plt
import numpy as np

X, Y = np.loadtxt('GFG.txt', delimiter=',', unpack=True)

plt.bar(X, Y)
plt.title('Line Graph using NUMPY')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

 
 

Output:


 

Load file matpotlib bar


 

You can also try other different graphs by just changing 1 line


 

plt.plot(X,Y) to plt.scatter(X,Y) or plt.plot(X,Y)


 

Python3
import matplotlib.pyplot as plt
import numpy as np

X, Y = np.loadtxt('GFG.txt', delimiter=',', unpack=True)

plt.plot(X, Y)
plt.title('Line Graph using NUMPY')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

Output:

load file matplotlib line

Python3
import matplotlib.pyplot as plt
import numpy as np

X, Y = np.loadtxt('GFG.txt', delimiter=',', unpack=True)

plt.scatter(X, Y)
plt.title('Line Graph using NUMPY')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

 
 

Output:


 

load file matplotlib scatter


 


Similar Reads

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy