gpt4 book ai didi

r - R中segplot中的不同区间颜色

转载 作者:行者123 更新时间:2023-12-01 11:35:41 24 4
gpt4 key购买 nike

我需要创建一个包含三段颜色的分段图:一个用于小于 1 的区间,一个用于大于 1 的区间,另一个用于包含 1 的区间。

df <- read.table(header=T, text='
geno n rd lower upper
A7002 7 1.12 0.94 1.30
ANTA82RR 12 1.00 0.91 1.09
BR05-83097 5 0.84 0.41 1.27
BR05-86275 5 0.64 0.25 0.93
BRM04-1660 7 1.26 1.02 1.50
BRN03-1404 5 1.03 0.88 1.18
BRN05-0656 5 0.57 0.47 0.67
')

library(latticeExtra)

segplot(reorder(factor(geno), rd) ~ lower + upper,
data = df,
xlim=c(-1, 2.5),
draw.bands = FALSE, centers = rd,
panel = function (x,y,z,...){
panel.segplot(x,y,z,...)
panel.abline(v=1,lty=3)
}
)

提前致谢。

最佳答案

出于某种原因,segplot 似乎不像大多数点阵图那样遵守 groups= 参数。这是一种困惑的解决方法,第一步是生成分组变量

df$group<-with(df, ifelse(lower>1, "superior", ifelse(upper<1, "inferior","contain")))

segplot(reorder(factor(geno), rd) ~ lower + upper,
data = df,
groups=group,
xlim=c(-1, 2.5),
draw.bands = FALSE, centers = rd,
panel = function(...) {
panel.abline(v=1,lty=3)
panel.superpose(...)
},
panel.groups = function (x,y,z,subscripts,col,col.line,centers,...){
panel.segplot(x,y,z[subscripts],centers=centers[subscripts],subscripts=T,
col=col.line,...)
}
)

enter image description here

关于r - R中segplot中的不同区间颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27435642/

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