Вы можете быстро добавить вертикальные линии на графики ggplot2 с помощью функции geom_vline() , которая использует следующий синтаксис:
geom_vline (xintercept, тип линии, цвет, размер)
куда:
- xintercept: Место для добавления строки на x-intercept. Это может быть одно значение или несколько значений.
- тип линии: стиль линии. По умолчанию — «сплошной», но вы можете указать «два тире», «длинное тире», «точечный», «точечный», «пунктирный» или «пустой».
- цвет: Цвет линии.
- размер: Ширина линии.
В следующих примерах показано, как использовать эту функцию на практике.
Добавьте одну вертикальную линию на график
В следующем коде показано, как добавить на график одну вертикальную линию:
library (ggplot2)
#create data frame
df <- data.frame(x=c(1, 3, 3, 4, 5, 5, 6, 9, 12, 15),
y=c(13, 14, 14, 12, 17, 21, 22, 28, 30, 31))
#create scatterplot with vertical line at x=10
ggplot(df, aes (x=x, y=y)) +
geom_point() +
geom_vline(xintercept= 10 )
Добавьте несколько вертикальных линий к графикам
В следующем коде показано, как добавить на график несколько вертикальных линий:
library (ggplot2)
#create data frame
df <- data.frame(x=c(1, 3, 3, 4, 5, 5, 6, 9, 12, 15),
y=c(13, 14, 14, 12, 17, 21, 22, 28, 30, 31))
#create scatterplot with vertical line at x=6, 10, and 11
ggplot(df, aes (x=x, y=y)) +
geom_point() +
geom_vline(xintercept=c( 6, 10, 11 ))
Настроить вертикальные линии
В следующем коде показано, как настроить вертикальные линии на графике:
library (ggplot2)
#create data frame
df <- data.frame(x=c(1, 3, 3, 4, 5, 5, 6, 9, 12, 15),
y=c(13, 14, 14, 12, 17, 21, 22, 28, 30, 31))
#create scatterplot with customized vertical line
ggplot(df, aes (x=x, y=y)) +
geom_point() +
geom_vline(xintercept= 5 , linetype='dashed', color='blue', size =2 )
Если у вас есть несколько вертикальных линий на одном графике, вы можете указать уникальный цвет для каждой линии:
library (ggplot2)
#create data frame
df <- data.frame(x=c(1, 3, 3, 4, 5, 5, 6, 9, 12, 15),
y=c(13, 14, 14, 12, 17, 21, 22, 28, 30, 31))
#create scatterplot with customized vertical lines
ggplot(df, aes (x=x, y=y)) +
geom_point() +
geom_vline(xintercept=c( 5 , 7 ) , linetype='dashed', color=c('blue', 'red'))
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в ggplot2:
Как построить линию линейной регрессии в ggplot2
Как установить пределы оси в ggplot2
Как создавать параллельные графики в ggplot2