У меня есть ряд данных, которые показывают, как давно в геноме был активен определенный тип ДНК-элемента. Это может выглядеть примерно так:Преобразование высоты каждого фактора в уложенной плотности плотности (ggplot2)
data.df <- data.frame(name=c("type1", "type1", "type1", "type2", "type2", "type2"),
active=c(9,11,10,21,21,18))
Итак, есть три элемента «Type1» активные приблизительно 10 лет назад и три типа 2 элемента активных 20 лет назад.
Я создал многослойный график плотности с использованием ggplot2, чтобы получить распределение, когда каждый элемент был активен, что-то вроде этого:
ggplot(data.df, aes(x=active)) + geom_density(position="stack", aes(fill=name))
У меня есть информация для относительных содержаний этих элементов, и я хотел бы умножить высоту каждой плотности элементов на это число. Это в конечном итоге даст мне фактическое изобилие активности этих элементов в геноме, а не просто распределение их активности.
Так что мой вопрос сводится к следующему: Как преобразовать/умножить высоту плотности каждого типа элемента на какой-то фактор, в зависимости от группы? Например, если бы у меня было 1000 типов одного элемента в геноме и только 3 элемента типа 2, то в таблице сложенной плотности доминировал бы тип 1, и вы вряд ли увидели бы кривую, связанную с типом 2.
Я надеюсь это имеет смысл. Заранее спасибо!
Весы были именно тем, что я искал. ..scaled .. масштабирует все кривые, чтобы иметь максимальную высоту 1, что делает более широкие диапазоны распределения/активности искусственно завышенными в количестве. Благодаря! –