Как создать график джиттера, похожий на этот в R?
Я хочу воспроизвести график джиттера в R, аналогичный описанному на рис. 1а в Zack et al., Nature Genetics, 2013:
Я попробовал пчелиный теплоту и пиратскую функцию. Функция beeswarm выравнивает точки по прямой, и они выглядят так, как будто нарисована линия. Я также попробовал функцию Pirateplot, и мне в целом она понравилась, однако я не понял, как изменить цвет различных точек на основе их значения на оси Y, как это сделано на графике из справочного документа.
В конце концов, точки должны быть разбросаны, как на пиратском графике, но иметь цветовую кодировку в соответствии с их значением на оси Y.
Есть какие-нибудь предложения?
Спасибо том
1 ответ
Я думаю, что ggplot2 - лучший пакет для создания графика джиттера.
ids <- c(
rep("id1", 20),
rep("id2", 20),
rep("id3", 20)
)
values <- runif(60)
classes <- c(
rep("class1", 30),
rep("class2", 30)
)
data <- data.frame(ids, values, classes)
library(ggplot2)
ggplot(data) +
geom_jitter(
aes(ids, values, color = classes),
width = 0.1
)