Split Geigenhandlung mit ggplot2

Ich möchte mit ggplot ein Diagramm mit geteilter Violinendichte erstellen, wie im vierten Beispiel aufdiese Seit der seeborenen Dokumentation.

Hier sind einige Daten:

set.seed(20160229)

my_data = data.frame(
    y=c(rnorm(1000), rnorm(1000, 0.5), rnorm(1000, 1), rnorm(1000, 1.5)),
    x=c(rep('a', 2000), rep('b', 2000)),
    m=c(rep('i', 1000), rep('j', 2000), rep('i', 1000))
)

Ich kann ausgewichene Violinen wie folgt zeichnen:

library('ggplot2')

ggplot(my_data, aes(x, y, fill=m)) +
  geom_violin()

Aber es ist schwierig, die Breiten an verschiedenen Punkten in den Nebeneinander-Verteilungen visuell zu vergleichen. Ich habe keine Beispiele für gespaltene Violinen in ggplot gefunden - ist das möglich?

Ich habe einen ... gefundenbase R Grafiklösung aber die Funktion ist ziemlich lang und ich möchte Verteilungsmodi hervorheben, die einfach als zusätzliche Ebenen in ggplot hinzugefügt werden können, aber schwieriger sind, wenn ich herausfinden muss, wie diese Funktion bearbeitet werden kann.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage