R

GGPLOT2 - geom_line에 point 추가하기

쿠키아버님 2022. 2. 14. 15:39
library(ggplot2)

df = data.frame(x=seq(0, 100, by=0.1), 
                y=seq(0, 100, by=0.1))

ggplot(df, aes(x=x, y=y))+
  geom_line()+
  geom_point()

 

데이터간의 간격이 너무 조밀한 경우 geom_line과 geom_point를 함께 사용했을 때

 

점들이 선을 모두 가리는 현상이 발생한다.

 

이를 해결하기 위한 여러가지 해법이 있는데, 아래에서는 인덱싱을 사용하여 해결함.

 

#그림에 넣을 점의 개수
Point_num = 25; 

thinned<-floor(seq(from = 1, 
                   to = dim(df)[1], 
                   length = Point_num))

ggplot(df, aes(x=x, y=y))+
  geom_line()+
  geom_point(data=df[thinned, ], aes(x=x, y=y))

 

참고 문헌 https://stackoverflow.com/questions/12332298/ggplot2-add-points-to-geom-line/40909131