2

Dotplot()我使用这些数据创建了一个简单的:

d <- data.frame(emot=rep(c("happy","angry"),each=2), 
           exp=rep(c("exp","non-exp"),2), accuracy=c(0.477,0.587,0.659,0.736), 
           Lo=c(0.4508,0.564,0.641,0.719), Hi=c(0.504,0.611,0.677,0.753))

和下面的代码:

library(Hmisc)
Dotplot(emot ~ Cbind(accuracy, Lo, Hi), groups=exp, data=d, 
        pch=c(1,16), aspect = "xy", par.settings = list(dot.line=list(col=0)))

在此处输入图像描述

我想要做的是减少 y 轴刻度之间的距离并减少绘图元素之间的距离 - 以便快乐/愤怒的水平误差线彼此靠近。我知道我可能可以通过使用scales=list(...)参数来实现这一点(还不确定如何),但我必须再次定义标签等。有更快的方法吗?解决起来似乎很简单,但我被卡住了。

4

1 回答 1

3

尽管 Hmisc ::Dotplot 正在使用 lattice,但仅添加一个 ylim 参数似乎就可以解决问题。您可以找出默认比例,因为这两个值是具有潜在 1/2 值的因子:

Dotplot(emot ~ Cbind(accuracy, Lo, Hi), groups=exp, data=d, ylim=c(0,3),
         pch=c(1,16), aspect = "xy", par.settings = list(dot.line=list(col=0)))
于 2012-08-21T17:53:31.430 回答