Подтвердить что ты не робот

Как контролировать количество небольших линий сетки в ggplot2?

По умолчанию кажется, что ggplot2 использует небольшую сетку, которая составляет половину основной сетки. Есть ли способ разбить это?

Например, у меня есть график, где ось х - годы, а основные перерывы (1850, 1900, 1950, 2000). Это означает, что малые точки сетки находятся в (1875, 1925, 1975), что несколько лет назад маловероятно. Как я могу сделать мизерную сетку в каждое десятилетие?

4b9b3361

Ответ 1

Вы делаете это, явно указывая minor_breaks() в scale_x_continuous. Обратите внимание, что, поскольку я не указал panel.grid.major в моем тривиальном примере ниже, два приведенных ниже графика не имеют этих (но вы должны добавить их, если они вам понадобятся). Чтобы решить вашу проблему, вы должны указывать годы как последовательность или просто вектор лет как аргумент для minor_breaks().

например.

 ggplot(movies, aes(x=rating)) + geom_histogram() + 
 theme(panel.grid.minor = element_line(colour="blue", size=0.5)) + 
 scale_x_continuous(minor_breaks = seq(1, 10, 1))

enter image description here

 ggplot(movies, aes(x=rating)) + geom_histogram() + 
 theme(panel.grid.minor = element_line(colour="blue", size=0.5)) + 
 scale_x_continuous(minor_breaks = seq(1, 10, 0.5))

enter image description here