График плотности в R

Итак, я рисую плотности (гистограммы). Например:

d <- density(table[table$position==2,]$rt)

Но я хочу построить несколько плотностей на одном графике. Например, я также хочу построить

density(table[table$position==3,]$rt)
density(table[table$position==4,]$rt)
density(table[table$position==5,]$rt)

Кроме того, я хочу указать центральную точку для каждой из этих плотностей.

Другой способ задать этот вопрос: как я могу вручную сдвинуть график плотности на определенное количество x единиц? (например, увеличьте все значения x на 5)


person CodeGuy    schedule 30.09.2011    source источник


Ответы (2)


Как и во многих функциях анализа R, сохранение вывода — ваш друг. Как и ?density.

foo<-density(something)

names(foo)

"x", "y" , "bw", "n" , "call" ,"data.name"

Итак, plot(foo$x+5, foo$y, t='l') Насколько я могу судить, вы закончили.

person Carl Witthoft    schedule 30.09.2011

Для части вашего вопроса о построении нескольких плотностей на одном графике используйте lines:

dat <- data.frame(x = rnorm(100), y = rnorm(100) + 2, z = rnorm(100) + 5)

plot(c(-2.5,8),c(0,0.5),type = "n")
lines(density(dat$x))
lines(density(dat$y))
lines(density(dat$z))

Вы открываете пустое графическое устройство с помощью plot(...,type = "n"), а затем рисуете на нем с помощью lines или points и т. д.

введите здесь описание изображения

person joran    schedule 30.09.2011
comment
Хороший вопрос - я должен был конкретно указать, что чрезмерный график лучше всего делать с помощью lines() - person Carl Witthoft; 30.09.2011