Increase number of axis ticks

ggplot2, r

Solution

You can override ggplots default scales by modifying `scale_x_continuous` and/or `scale_y_continuous`. For example:

library(ggplot2)
dat <- data.frame(x = rnorm(100), y = rnorm(100))

ggplot(dat, aes(x,y)) +
  geom_point()

Gives you this:

And overriding the scales can give you something like this:

ggplot(dat, aes(x,y)) +
  geom_point() +
  scale_x_continuous(breaks = round(seq(min(dat$x), max(dat$x), by = 0.5),1)) +
  scale_y_continuous(breaks = round(seq(min(dat$y), max(dat$y), by = 0.5),1))

If you want to simply "zoom" in on a specific part of a plot, look at `xlim()` and `ylim()` respectively. Good insight can also be found here to understand the other arguments as well.

Problem

I'm generating plots for some data, but the number of ticks is too small, I need more precision on the reading. Is there some way to increase the number of axis ticks in ggplot2? I know I can tell ggplot to use a vector as axis ticks, but what I want is to increase the number of ticks, for all data. In other words, I want the tick number to be calculated from the data. Possibly ggplot do this internally with some algorithm, but I couldn't find how it does it, to change according to what I want.

Original source

Related problems