Open In App

How to Plot List of X, Y Coordinates in Matplotlib?

Last Updated : 17 Dec, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

Prerequisites: 

Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python. To plot any data the most basic step starts with creating or loading it, this article discusses all the ways of passing the data to be plotted as list. While passing data as list one important thing to be kept in mind is to keep X,Y Lists of the same size, otherwise it will raise a ValueError. 

Examples shown in this article use scatter plot, the same approaches can be applied to any other type of graph.

Method 1: Naive method

In this method, the coordinates are simply passed as two lists.

Approach

  • Import module
  • Create a list for X coordinates
  • Create a list for Y coordinate
  • Pass these two lists to plot the function

Example: 

Python3




import matplotlib.pyplot as plt
  
x = [1, 2, 3, 4, 5, 6, 7, 8]
y = [2, 3, 1, 3, 1, 4, 2, 3]
  
plt.scatter(x, y)
plt.show()


Output:

Method 2: Using numpy array

Function used: arrange()

Syntax: np.arange(start,end,step)

Parameters:

  • Start: starting value
  • End: ending value
  • Step: step size, by default it is 1.

Approach

  • Import module
  • Create numpy array for coordinates
  • Pass these arrays to plot

Example:

Python3




# importing Matplotlib and Numpy Packages
import numpy as np
import matplotlib.pyplot as plt
  
# generating two arrays from 10 to 1 and from 1 to 10
x = np.arange(1, 11, 1)  
y = np.arange(10, 0, -1)  
  
# plot our list in X,Y coordinates
plt.scatter(x, y)
plt.show()


Output:

Method 3: List of lists

Creating lists of list of all points to be plotted can also one of the ways of achieving our requirement. After creating such a list it cannot be directly passed to plot, first a transpose needs to taken to get x and y coordinates.

Approach

  • Import module
  • Create list of lists for coordinates
  • Take transpose
  • Pass the coordinates to the plot

Example

Python3




# importing Matplotlib and Numpy Packages
import numpy as np
import matplotlib.pyplot as plt
  
# The data are given as list of lists (2d list)
data = np.array([
    [1, 4],
    [2, 2],
    [3, 7],
    [4, 6],
    [5, 0],
    [6, 3]
])
# Taking transpose
x, y = data.T
  
  
# plot our list in X,Y coordinates
plt.scatter(x, y)
plt.show()


Output: 



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads