【问题标题】:How to add a diagonal line to a plot?如何在绘图中添加对角线?
【发布时间】:2015-02-12 10:40:21
【问题描述】:

我想在绘图中添加一条对角线。它不是线性回归线。我只想要一条诊断线。 谁能帮我这个?非常感谢!

【问题讨论】:

  • 看看abline(...)
  • geom_abline 如果您使用的是 ggplot

标签: r ggplot2 line scatter-plot


【解决方案1】:
lines(x = c(0,100), y = c(0,100))

【讨论】:

    【解决方案2】:

    如果您不希望线条延伸到整个绘图范围,或者您想添加任意线条,请使用segments。 比如下面的代码会画一个正方形:

    plot.new()
    plot.window(xlim = c(0, 3), ylim = c(0, 3))
    segments(x0=c(1,1,2,2), x1=c(1,2,2,1), y0=c(1,2,2,1), y1=c(2,2,1,1))
    

    【讨论】:

      【解决方案3】:

      这会在 ggplot 中添加一条对角线,

      qplot(1,1) + annotation_custom(linesGrob(c(0,1), c(0,1)))
      

      或等价的,

      qplot(1,1) + annotate("segment", x=-Inf, xend=Inf,y=-Inf, yend=Inf)
      

      【讨论】:

        【解决方案4】:

        如果要加1:1对角线:

        qplot(1,1) + geom_abline(intercept = 0, slope = 1)
        

        【讨论】:

          【解决方案5】:

          要添加一条线,例如,从 x=-3, y=-3 到 x=3, y=3:

          segments(-3,-3,3,3)

          【讨论】:

            【解决方案6】:

            一个对角线,从 0 到 100,例如显示实际值与预测值:abline=c(0,1)

            【讨论】:

              【解决方案7】:

              你可以使用 abline()

              abline(coef = c(0,1))
              

              这会在现有绘图中为您提供一条从截距 0 开始、斜率为 1 的线。

              如果您希望线与任何图成对角线,只需将截距设置为左下角,将斜率设置为两个轴之间的增加比率。

              【讨论】:

                【解决方案8】:

                也许这有点晚了,但是我想与您分享我的答案-也许有用。首先,定义一个面板函数并在其中定义您的 abline 参数;如下:

                require(hexbin)
                y=runif(100)
                x=runif(100)
                
                panel <- function(x,y, ...){
                panel.xyplot(x, y, ...)
                panel.abline(0,1, col="red", size = 0.25, lwd = 2)
                }
                

                您可以根据您的用例自定义参数。

                然后您可以将“面板”功能添加到您的绘图库中,即 ggplot 或 hexbin 绘图系列。这里我使用了 hexbinplot 函数,这是一个非常好的可视化函数:

                hexbinplot(x ~ y, panel = panel)
                

                下面是它的外观(请记住,您可以通过自定义图形元素使它变得更好)。

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2021-12-11
                  • 2013-08-06
                  • 2013-03-13
                  • 1970-01-01
                  • 1970-01-01
                  • 2018-07-30
                  相关资源
                  最近更新 更多