How to Create a Scree Plot in R

Spread the love

A scree plot is a graphical tool that is used in exploratory data analysis to display the importance of a component or a factor by showing the eigenvalues associated with these components in a decreasing order versus the components themselves in a sequential manner. The term ‘scree’ refers to the residual matter that you find at the bottom of a cliff and the plot looks just like that, hence the name. The plot helps us to determine the optimal number of components or factors in techniques like Principal Component Analysis (PCA), factor analysis, and clustering.

The “elbow” in a Scree plot, which is often the point of interest, represents the component after which the remaining components explain only a small proportion of the variance.

In this article, we will discuss how to create a scree plot in R using the stats package for Principal Component Analysis (PCA).

Creating a Scree Plot Using stats Package in R

The stats package is one of the packages that comes with your installation of R and it contains the princomp() function that performs Principal Component Analysis, which we will use to demonstrate how to create a scree plot.

Here are the steps involved:

1. Loading the Dataset: R comes with several built-in datasets. For our purposes, we will use the mtcars dataset.

# Load the mtcars dataset

2. Performing Principal Component Analysis: We can perform a PCA on the dataset using the princomp() function.

# Perform PCA
pc <- princomp(mtcars, cor = TRUE)

3. Creating the Scree Plot: The screeplot() function from the stats package can be used to create a scree plot of the principal components.

# Create a scree plot
screeplot(pc, type = "line", main = "Scree Plot")

In the screeplot() function, type = "line" specifies that we want a line plot. The main parameter is used to specify the title of the plot.


A scree plot is a simple, yet powerful, exploratory tool that lets you visualize the importance of different components or factors in your dataset. It’s an essential tool in multivariate data analysis and is commonly used in techniques such as PCA and factor analysis to determine the optimal number of components or factors.

Posted in RTagged

Leave a Reply