首页 > 解决方案 > 如何将特定点添加到 ggroc() 曲线?

问题描述

我正在尝试使用以下方法向我的 ROC 曲线添加一个特定点:

g <- ggroc(c.roc, size = 0.8) + 
  labs(x="specificities", y = "sensitivities")

g  + ggplot(tibble(sensitivities=3.9558923, specificities=0.8552395), aes(x=sensitivities, y=specificities)) +
  geom_point(colour="blue")

但不起作用:

错误:不知道如何将 ggplot(tibble(sensitivities = 3.9558923, specificities = 0.8552395), aes(x = sensitivities, y = specificities)) 添加到绘图中

标签: r

解决方案


你所做的是ggroc() + ggplot() + geom_point(),本质上是ggplot() + ggplot() + geom_point()。很像ggplotggroc需要一个 geom 层,而不是另一个数据层。要添加新数据,您可以将其传递到您的 geom。这应该有效:

g <- ggroc(c.roc, size = 0.8) +
    labs(x="specificities", y = "sensitivities")

# You don't need ggplot. Just pass data into your geom.
g + geom_point(data = tibble(sensitivities=0.9558923, # Should be less than one.
                             specificities=0.8552395
                             ),
               mapping = aes(x=sensitivities, y=specificities),
               colour = "blue")

只要确保colouraes. 另请注意,ROC x 和 y 比例为 0 到 1,这意味着 asensitivities = 3.9558923会将点放在绘图区域之外。我已将其更改为上面的 0.9558923。


推荐阅读