GGPlot 및 r을 사용하여 사전 정의 된 밀도 함수를 플로팅합니다

StackOverflow https://stackoverflow.com/questions/1523298

  •  19-09-2019
  •  | 
  •  

문제

길이가 다른 세 가지 데이터 세트가 있으며 같은 플롯에서 세 가지 모두의 밀도 함수를 플롯하고 싶습니다. 이것은 기본 그래픽으로 간단합니다.

n <- c(rnorm(10000), rnorm(10000))
a <- c(rnorm(10001), rnorm(10001, 0, 2))
p <- c(rnorm(10002), rnorm(10002, 2, .5))

plot(density(n))
lines(density(a))
lines(density(p))

나에게 다음과 같은 것을 제공합니다.

Alt Text http://www.cerebralmastication.com/wp-content/uploads/2009/10/density.png

그러나 GGPLOT2에서만 사용할 수있는 다른 기능을 추가하고 싶습니다. GGPlot은 실제로 경험적 데이터를 가져 와서 밀도를 계산하기를 원한 것 같습니다. 내 데이터 세트의 길이가 다르기 때문에 입술이 많이 제공됩니다. 그렇다면이 세 가지 밀도를 GGPLOT2에서 음모하게하려면 어떻게해야합니까?

도움이 되었습니까?

해결책

GGPLOT2의 행복에 대한 비결은 모든 것을 "긴"(또는 매트릭스 지향 사람들이 "sparse"라고 부르는 것) 형식에 넣는 것입니다.

df <- rbind(data.frame(x="n",value=n),
            data.frame(x="a",value=a),
            data.frame(x="p",value=p))
qplot(value, colour=x, data=df, geom="density")

색상을 원하지 않는다면 :

qplot(value, group=x, data=df, geom="density")
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top