技术贴 | R语言只画图例不画图
本文由阿童木根据实践经验而整理,希望对大家有帮助。
原创微文,欢迎转发转载。
分享一个利用R语言在画板中只画图例不画图的方法。第一步还是需要用plot一个图,但是利用一些参数可以将图清除掉,然后接着再画图例就可以了。下面来看如何达到这些目的。
一、先画一个图
plot(1)
二、擦擦擦
plot(NULL, xlim=0:1, ylim=0:1)
# 擦掉点
plot(NULL, xlim=0:1, ylim=0:1, xlab="", ylab="")
# 擦掉xy轴标签
plot(NULL, xlim=0:1, ylim=0:1, xlab="", ylab="", xaxt="n", yaxt="n", bty="n")
# 擦掉框框
三、画图例
>写点什么
legend("topleft", legend=c("子", "丑", "寅", "卯"))
legend("center", legend=c("甲", "乙", "丙", "丁"))
legend("bottomright", legend=c("上", "下", "左", "右"))
>添加图形
pch参数可控制图例的图形,如上表。图例的颜色可以使用三种方法表示:1.英文单词;2. 十六进制颜色代码;3. 十进制颜色代码。
plot(NULL, xlim=0:1, ylim=0:1, xlab="", ylab="", xaxt="n", yaxt="n", bty="n")
legend("topleft", legend=c("子", "丑", "寅", "卯"), pch=15, col=c("red", "black", "blue", "purple"))
legend("center", legend=c("甲", "乙", "丙", "丁"), pch=17, col=c("#FFD700", "#ED9121", "#03A89E", "#FFC0CB"))
legend("bottomright", legend=c("上", "下", "左", "右"), pch=19, col=c(rgb(0,0,255,maxColorValue=255), rgb(11,23,70,maxColorValue=255), rgb(255,0,255,maxColorValue=255), rgb(255,69,0,maxColorValue=255)))
>改变图形和文字大小
参数:
pt.cex: 图形大小
cex: 文字大小
bty: 去掉框框
plot(NULL, xlim=0:1, ylim=0:1, xlab="", ylab="", xaxt="n", yaxt="n", bty="n")
legend("topleft", legend=c("子", "丑", "寅", "卯"), pch=15, col=c("red", "black", "blue", "purple"), pt.cex=2, cex=2, bty="n")
legend("center", legend=c("甲", "乙", "丙", "丁"), pch=17, col=c("#FFD700", "#ED9121", "#03A89E", "#FFC0CB"), pt.cex=2, cex=2, bty="n")
legend("bottomright", legend=c("上", "下", "左", "右"), pch=19, col=c(rgb(0,0,255,maxColorValue=255), rgb(11,23,70,maxColorValue=255), rgb(255,0,255,maxColorValue=255), rgb(255,69,0,maxColorValue=255)), pt.cex=2, cex=2, bty="n")
四、添加标题
>使用mtext添加文本
参数:
at: 调整左右位置(top)
cex: 文字大小
adj:左右位置
padj:上下位置
col: 颜色
plot(NULL, xlim=0:1, ylim=0:1, xlab="", ylab="", xaxt="n", yaxt="n", bty="n")
legend("topleft", legend=c("子", "丑", "寅", "卯"), pch=15, col=c("red", "black", "blue", "purple"), pt.cex=2, cex=2, bty="n")
legend("center", legend=c("甲", "乙", "丙", "丁"), pch=17, col=c("#FFD700", "#ED9121", "#03A89E", "#FFC0CB"), pt.cex=2, cex=2, bty="n")
legend("bottomright", legend=c("上", "下", "左", "右"), pch=19, col=c(rgb(0,0,255,maxColorValue=255), rgb(11,23,70,maxColorValue=255), rgb(255,0,255,maxColorValue=255), rgb(255,69,0,maxColorValue=255)), pt.cex=2, cex=2, bty="n")
mtext("地支", at=0.1, cex=2, adj=0.5, padj=0.4, col="red")
mtext("天干", at=0.5, cex=2, adj=0.3, padj=4.5, col="red")
mtext("方位", at=0.95, cex=2, adj=0.5, padj=8, col="red")
感谢阅读~
你可能还喜欢
1 技术贴 | 16S专题 | 简单介绍如何用自己的笔记本处理高通量16S数据
4 技术贴 | 宏转录组专题 | DDBJ数据库:宏转录组测序数据下载