【问题标题】:How to flip y-axis (positive to negative) without losing error bars with plotrix in R如何在 R 中使用 plotrix 翻转 y 轴(从正到负)而不会丢失误差线
【发布时间】:2018-01-06 16:47:33
【问题描述】:

我正在尝试使用 R 中的包 plotrix 制作图表,但无法让它以我想要的方式显示。由于数据的解释方式,正数实际上意味着该组中的个人表现更差,负数意味着他们表现更好。这在 y 轴正常绘制时会令人困惑(随着数字的增加而增加),但如果 y 轴被翻转,则可能更容易解释。

我能够翻转 y 轴值并正确绘制点,但在此过程中我丢失了错误栏,我不知道为什么。下面是一些演示该问题的示例代码:

使用“正常”y 轴绘图(随着上升数字增加):

#rm(list=ls(all=TRUE))  
library(plotrix)  
longxlim <- c(0,4)  
longylim <- c(-2,2)  
plotCI(x = c(1:3), 
   y = c(-1:1), 
   uiw = c(0.25, 0.5, 0.75),
   xlim = longxlim, ylim = longylim,
   pch = c(1:3))

使用“翻转”的 y 轴进行绘图(随着上升而减少数字):

longxlim <- c(0,4)
longylim <- c(2,-2)
plotCI(x = c(1:3), 
   y = c(-1:1), 
   uiw = c(0.25, 0.5, 0.75),
   xlim = longxlim, ylim = longylim,
   pch = c(1:3))

【问题讨论】:

    标签: r plot plotrix


    【解决方案1】:

    与其否定限制,不如否定 y 值本身?

    library(plotrix)  
    longxlim <- c(0,4)  
    longylim <- c(-2,2)  
    yplot <- c(-1:1)
    
    
    plotCI(x = c(1:3), 
           y = -yplot, 
           uiw = c(0.25, 0.5, 0.75),
           xlim = longxlim, ylim = longylim,
           pch = c(1:3))
    

    要更改 y 轴标签,您可以设置 yaxt = 'n' 并使用 axis

    longxlim <- c(0,4)  
    longylim <- c(-2,2)  
    yplot <- c(-1:1)
    ylabs <- c(-2:2)
    
    plotCI(x = c(1:3), 
           y = -yplot, 
           uiw = c(0.25, 0.5, 0.75),
           xlim = longxlim, ylim = longylim,
           pch = c(1:3), yaxt = 'n')
    axis(2, at = ylabs, labels = -ylabs)
    

    【讨论】:

    • 这将适用于我的目的。如果其他人有办法完成最初的问题所希望的,请随时提供答案。现在,我会将@lewisjr2 的答案标记为正确。
    • 我猜你说的是 y 轴上的标签?请参阅我的编辑。希望这会有所帮助。
    • 是的,这就是我所说的。谢谢@lewisjr2。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-10
    相关资源
    最近更新 更多