ось ggplot: разные оси y слева и справа от графика - PullRequest
0 голосов
/ 30 мая 2018

У меня есть следующие данные:

https://www.dropbox.com/s/at2f2zni7s1hnzm/results.csv?dl=0

Когда я строю все три графика, используя следующее:

library(ggplot2)
library(pROC)
    roc <- roc(results$testactual, results$pred)
    ggroc(roc) +
      geom_density(data = results %>%
                     filter(testactual == 0), aes(pred), color='green') + 
      geom_density(data = results %>%
                     filter(testactual == 1), aes(pred), color='black')

Я могу получить 3 графикана том же графике, но ось не такая, как я бы надеялся.

Я пытаюсь сделать так, чтобы ось Y для графиков плотности отображалась на правой стороне, а roc графики y-оси слева.

Наконец, отсортируйте ось х так, чтобы 1 находился справа, а ноль - слева (однако я думаю, что справлюсь с этим, поскольку столкнулся с этимпроблема раньше)

Прямая ссылка R на данные:

results <- read.csv(url("https://www.dropbox.com/s/at2f2zni7s1hnzm/results.csv?dl=1"))

РЕДАКТИРОВАТЬ: Просто построение графиков плотности:

enter image description here

Участок участка РПЦ

enter image description here

1 Ответ

0 голосов
/ 31 мая 2018

Используйте параметр sec.axis.Также вы можете использовать ..scaled.. для увеличения вашей плотности до 1.

roc <- roc(results$testactual, results$pred)
ggroc(roc) +
  geom_density(data = results %>%
                 filter(testactual == 0), aes(x=pred, y=..scaled..), color='green') + 
  geom_density(data = results %>%
                 filter(testactual == 1), aes(x=pred, y=..scaled..), color='black') +
scale_y_continuous(name = "Density", sec.axis = sec_axis(~., name = "Sensitivity"))

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...