/ / Избягване на наслагване на участък с помощта на geom_point в ggplot2 - r, ggplot2, визуализация на данни

Избягвайте наслагване на парцела с помощта на geom_point в ggplot2 - r, ggplot2, визуализация на данни

В ggplot2 по подразбиране geom_point се нанася над текущия график. Например, извикването на geom_point след извикване на geom_boxplot води до резултати в точките, изложени върху полето за кутии:

ggplot(iris, aes(x = "All", y = Sepal.Length)) +
geom_boxplot() +
geom_point(aes(color=Species), position = "jitter")

кутия с наслоени точки

Има ли начин да се начертаят точките отделно отстрани, а не над кутията?

В конкретния случай искам да направя това, защото точките замъгляват парцела (дори с прозрачност и т.н.), проблем, който не е проблем с примерния набор от данни тук.

Отговори:

4 за отговор № 1

Можете да ги нанесете поотделно, като предоставите отделни x-стойности за boxplot и точките:

ggplot(iris, aes(y = Sepal.Length)) +
geom_boxplot(aes(x="Boxplot")) +
geom_point(aes(x="Points", color=Species),
position = position_jitter(width=0.15, height=0))

Друга възможност е да се използват кутии по видове:

ggplot(iris, aes(y = Sepal.Length)) +
geom_boxplot(aes(x="All Data"), width=0.5) +
geom_boxplot(aes(x="By Species", colour=Species), width=0.5,
position=position_dodge(width=0.6))

Ето как изглеждат двата парцела:

въведете описанието на изображението тук