Welcome to our comprehensive guide on how to create an Ogive graph in Python! An Ogive graph is a graphical representation of a cumulative distribution function (CDF) that is used to analyze the distribution of data. In this guide, we will explore how to create an Ogive plot using Python, a popular programming language for data analysis and visualization.
What is an Ogive graph
An Ogive graph (plot), also known as a cumulative frequency polygon, is a graph that represents the cumulative frequency or cumulative relative frequency of a dataset. It is useful for analyzing the distribution of data, as it can help identify patterns and trends in the dataset.
Example: How to Create an Ogive in Python
Here’s an example code snippet that shows how to create an ogive using Python’s Matplotlib library:
import numpy as np
import matplotlib.pyplot as plt
# generate some example data
data = np.random.normal(loc=50, scale=10, size=1000)
# create a histogram of the data
n, bins, patches = plt.hist(data, bins=30, cumulative=True, density=True, histtype='step')
# convert the histogram to an ogive
ogive = np.cumsum(n)
# plot the ogive
plt.plot(bins[:-1], ogive, 'k--', linewidth=1.5)
# add labels and a title
plt.xlabel('Value')
plt.ylabel('Cumulative Frequency')
plt.title('Example Ogive')
# show the plot
plt.show()
Output:

In this example, we first generate some example data using NumPy’s random.normal
function. We then create a histogram of the data using Matplotlib’s hist
function, specifying cumulative=True
to create a cumulative histogram.
Next, we convert the histogram to an ogive by computing the cumulative sum of the histogram bins using NumPy’s cumsum
function. Finally, we plot the ogive using Matplotlib’s plot
function, adding labels and a title to the plot.
Running this code will generate a plot of an ogive that represents the cumulative distribution function of the example data. You can customize the code to work with your own data by replacing the data
variable with your own dataset.
Wrap up
To learn more about Ogive in Python function check out the:
https://numpy.org/doc/stable/reference/generated/numpy.histogram.html
Thanks for reading. Happy coding!