Сплит скрипичный сюжет с ggplot2

Я хотел бы создать разделенный график плотности скрипки, используя ggplot, как четвертый пример наэта страница морской документации.

Вот некоторые данные:

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))
)

Я могу построить уклонение от скрипки, как это:

library('ggplot2')

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

Но визуально сравнивать ширину в разных точках в параллельных распределениях сложно. Я не смог найти ни одного примера скрипки в ggplot - возможно ли это?

Я нашелграфическое решение base R но эта функция довольно длинная, и я хочу выделить режимы распределения, которые легко добавить в виде дополнительных слоев в ggplot, но это будет сложнее сделать, если мне нужно выяснить, как редактировать эту функцию.

Ответы на вопрос(2)

Ваш ответ на вопрос