You can use the **scale_x_continuous()** function in ggplot2 to customize the x-axis of a given plot.

This function uses the following basic syntax:

p + scale_x_continuous(breaks, n.breaks, labels, limits, ...)

where:

**breaks**: A numeric vector of positions for breaks on the x-axis**n.breaks**: An integer vector specifying the number of total breaks on the x-axis**labels**: A character vector of labels to use for the x-axis**limits**: A numeric vector that specifies the min and max value for the x-axis

The following examples show how to use this function in different scenarios with the following data frame in R:

#create data frame df <- data.frame(points=c(5, 7, 12, 13, 15, 19, 22, 25), assists=c(4, 3, 2, 3, 7, 8, 5, 7)) #view data frame df points assists 1 5 4 2 7 3 3 12 2 4 13 3 5 15 7 6 19 8 7 22 5 8 25 7

**Example 1: Use scale_x_continuous with Custom Axis Breaks**

The following code shows how to create a scatterplot in ggplot2 and use **scale_x_continuous()** with the **breaks **argument to specify custom axis breaks of 5, 15 and 25:

library(ggplot2) #create scatterplot with custom x-axis breaks ggplot(df, aes(x=points, y=assists)) + geom_point(size=2) + scale_x_continuous(breaks=c(5, 15, 25))

Notice that the x-axis only contains axis breaks at 5, 15 and 25, just as we specified using the **breaks **argument.

**Example 2: Use scale_x_continuous with Custom Number of Breaks**

The following code shows how to create a scatterplot in ggplot2 and use **scale_x_continuous()** with the **n.breaks **argument to place exactly 12 axis breaks on the x-axis:

library(ggplot2) #create scatterplot with custom number of breaks on x-axis ggplot(df, aes(x=points, y=assists)) + geom_point(size=2) + scale_x_continuous(n.breaks=12)

Notice that the x-axis contains exactly 12 axis breaks, just as we specified using the **n.breaks **argument.

**Example 3: Use scale_x_continuous with Custom Labels**

The following code shows how to create a scatterplot in ggplot2 and use **scale_x_continuous()** with the **labels **argument to specify the label names to place on the x-axis:

library(ggplot2) #create scatterplot with custom labels on x-axis ggplot(df, aes(x=points, y=assists)) + geom_point(size=2) + scale_x_continuous(breaks=c(5, 15, 25), labels=c('five', 'fifteen', 'twenty-five'))

Notice that the x-axis contains 3 axis breaks each with custom labels, just as we specified using the **labels **argument.

**Example 4: Use scale_x_continuous with Custom Limits**

The following code shows how to create a scatterplot in ggplot2 and use **scale_x_continuous()** with the **limits** argument to specify custom x-axis limits of 0 and 40:

library(ggplot2) #create scatterplot with custom x-axis limits ggplot(df, aes(x=points, y=assists)) + geom_point(size=2) + scale_x_continuous(limits=c(0, 40))

Notice that the x-axis ranges from 0 to 40, just as we specified using the **limits** argument.

**Additional Resources**

The following tutorials explain how to perform other common tasks in ggplot2:

How to Use scale_y_continuous in ggplot2

How to Rotate Axis Labels in ggplot2

How to Change Legend Labels in ggplot2