绘制森林图(R)
#object: 绘制森林图 #writer: mike #time: 2020.10.13 #构造数据集 names <- c("a","b","c","d","e","f","g","h","l","m"); or <- c(0.9,2,0.3,0.4,0.5,1.3,2.5,1.6,1.9,1.1); lower <- c(0.75,1.79,0.18,0.2,0.38,1.15,2.41,1.41,1.66,0.97); upper <- c(1.05,2.11,0.42,0.6,0.62,1.45,2.59,1.79,2.14,1.23); sample <- c(450,420,390,400,470,390,400,388,480,460); factors <- c("risk","risk","protec","protec","protec","risk","risk","risk","risk","risk"); #构造数据框 data <- data.frame(names,or,lower,upper,sample,factors); #载入包 library("ggplot2"); #颜色无法设置,颜色的设置不需要使用foctor()函数,但是必须使用col 而不是colors或者colours,注意这里一旦设置了颜色,就会和下面的涂层重合不到一起 #不知道为什么会这样,好像是如果加上颜色之后,那么就要对后加的数据进行分类,并分配颜色。 p <- ggplot(data, aes(x=or, y=names)); #如果在point这里设置颜色,只会改变点的颜色,而上面会改变,与某一个数据有关的所有图像的颜色 p <- p + geom_point(size=3.6) + geom_errorbarh(aes(xmax=upper, xmin=lower, height=0.3)) + scale_x_continuous(limits=c(0.1,5), breaks=seq(0,5,0.5)) + geom_vline(aes(xintercept=1)) + xlab("oddRatio") + ylab("") #在图形中加入标签 #x坐标 lx <- c(rep(2.87,11)); #y坐标 ly <- c(11,10,9,8,7,6,5,4,3,2,1); #标签 llab <- c("p value","0.01","0.01","0.01","0.01","0.01","0.01","0.01","0.01","0.01","0.05"); #构建另一个数据框 data1 <- data.frame(lx,ly,llab); p <- p + geom_text(data=data1, aes(x=lx,y=ly,label=llab)) p
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律