gpt4 book ai didi

r - 将抖动数据点添加到带有误差线的晶格 xYplot 中

转载 作者:行者123 更新时间:2023-12-02 07:52:37 37 4
gpt4 key购买 nike

我正在尝试使用 xYplot from package Hmisc 绘制覆盖在抖动原始数据点上的误差线。使用panel.stripplot 调用xYplot 中的函数似乎很简单。它可以工作,但有一个奇怪的故障 - 我无法“抖动”使用 panel.stripplot 绘制的数据。让我阐述一下我的观点:

library(reshape2)
library(Hmisc)
data(iris)
#get error bars
d <- melt(iris, id=c("Species"), measure=c("Sepal.Length"))
X <- dcast(d, Species ~ variable, mean)
SD <- dcast(d, Species ~ variable, sd)
SE = SD[,2]/1#this is wrong on purpose, to plot larger error bars
Lo = X[,2]-SE
Hi = X[,2]+SE
fin <- data.frame(X,Lo=Lo,Hi=Hi)
#plot the error bars combined with raw data points
quartz(width=5,height=7)
xYplot(Cbind(Sepal.Length, Lo, Hi) ~ numericScale(Species), fin,
type=c("p"), ylim=c(4,8),lwd=3, col=1,
scales = list(x = list(at=1:3, labels=levels(d$Species))),
panel = function(x, y, ...) {
panel.xYplot(x, y, ...)
panel.stripplot(d$Species, d$value, jitter.data = TRUE, cex=0.2, ...)
}
)

结果是:

enter image description here

正如您所看到的,这些点与误差线垂直排列,为什么我希望它们在水平平面上稍微偏移。我尝试调整 panel.stripplot 中的 factoramount 参数,但它没有改变它。有什么建议么?请仅使用点阵解决方案,最好使用 xYplot。

最佳答案

使用horizo​​ntal=FALSE:

panel.stripplot(d$Species, d$value,                                         
jitter.data = TRUE, cex=0.2,horizontal=FALSE, ...)

内部只是调用:

panel.xyplot(d$Species, d$value, cex=0.2,jitter.x=TRUE, ...)

enter image description here

关于r - 将抖动数据点添加到带有误差线的晶格 xYplot 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20523839/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com