Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在ggplot中添加abline和调整标签时出现问题_R_Ggplot2_Roc - Fatal编程技术网

R 在ggplot中添加abline和调整标签时出现问题

R 在ggplot中添加abline和调整标签时出现问题,r,ggplot2,roc,R,Ggplot2,Roc,我正在使用R中的ggplot构建和定制ROC曲线。除了2个挑战外,我几乎完成了 由于某种原因,我添加的abline超出了0和1。如何限制这一点?该线应从原点开始并转至(1,1) 如何将十进制标签显示为百分比 到目前为止我编写的代码: ggplot(roc, aes(x=fpr, ymin=0, ymax=tpr)) + geom_ribbon(alpha=0.2) + geom_line(aes(y=tpr)) + ggtitle(paste0("ROC Curve, AUC=",auc)) +

我正在使用R中的ggplot构建和定制ROC曲线。除了2个挑战外,我几乎完成了

  • 由于某种原因,我添加的abline超出了0和1。如何限制这一点?该线应从原点开始并转至(1,1)

  • 如何将十进制标签显示为百分比

  • 到目前为止我编写的代码:

    ggplot(roc, aes(x=fpr, ymin=0, ymax=tpr)) +
    geom_ribbon(alpha=0.2) +
    geom_line(aes(y=tpr)) +
    ggtitle(paste0("ROC Curve, AUC=",auc)) +
    xlab("Cumulative % Goods")+
    ylab("Cumulative % Bads")+
    geom_abline(intercept=0, slope = 1, color="red", linetype="dashed")+
    theme_classic()
    
    我还尝试添加了
    scale\u y\u continuous(labels='percent')
    ,但是它给了我一个错误“breaks和labels必须具有相同的长度”


    我找到了解决方案-我使用了“缩放”库并在绘图中添加了2个元素。完整代码如下:

    ggplot(roc, aes(x=fpr, ymin=0, ymax=tpr)) +
        geom_ribbon(alpha=0.1) +
        geom_line(aes(y=tpr)) +
        ggtitle(paste0("ROC Curve, AUC=",auc)) +
        xlab("Cumulative % Goods")+
        ylab("Cumulative % Bads")+
        geom_abline(intercept=0, slope = 1, color="red", linetype="dashed")+
        theme_classic()+
        scale_y_continuous(labels=percent, expand=c(0,0))+
        scale_x_continuous(labels=percent, expand=c(0,0))
    

    请添加一些数据,以便我们可以使用您的代码。将来,每个帖子问一个问题。问题1可能是一个骗局。问题2是一个骗局。