[withR]좀더 하는 ggplot2-Density Plot of Two-Dimensional Data(이차원 데이터의 density plot)
library(ggplot2) #예제 자료
이차원 데이터의 density plot을 생성하자.
이차원 density plot은 stat_density2d()로 가능하다.
p <- ggplot(faithful, aes(x=eruptions, y=waiting))
p + geom_point() + stat_density2d()
ggplot()을 p에 할당하고, p를 재사용해서 코딩을 한다.
등고선형태로 그래프가 생성 되었다. x축과 y축을 가진 2차원의 그래프이다.
p + stat_density2d(aes(colour=..level..))
density를 색으로 표현한 그래프이다. colour=..level..이 왜 ..density..가 아닌지는 잘 모르겠다.
p + geom_point()+stat_density2d(aes(alpha=..density..), geom=”tile”, contour=FALSE)
이번엔 alpha=를 통해서 구역의 투명도를 조절하여 2차원 density를 표현하였다.
p + stat_density2d(aes(fill=..density..), geom=”raster”, contour=FALSE)
옵션을 fill을 주면 위와 같은 그래프가 생성된다. 이때 geom=””안에, tile과 raster두가지가 들어 가는 것을 확인 할 수있는데 둘다 비슷한 형태의 그래프를 생성할때 사용된다. 아직은 정확한 차이점을 파악하지 못해서 나중에 다시 설명하도록 하겠다.
p + stat_density2d(aes(fill=..density..), geom=”raster”,contour=FALSE, h=c(.5,5))
h=c()를 이용하면 구간을 더 미세하게 쪼겔수 있다.