1

我正在尝试创建一个轴中断的图形。

它创建 .jpg 图像,但在此过程中会打印两组 x 轴标签(见附图)。

代码中的什么错误导致了这个问题?

results = read.table("./ceu_asn_afr.txt",head=T)
library(plotrix)
jpeg("Figure1.1.jpg",width=2000,height=2000,res=300)
xgap <- ifelse(as.numeric(results[,1]) > 1.9, as.numeric(results[,1])-0.4, as.numeric(results[,1]))
plotCI(xgap,as.numeric(results[,3]),ui=as.numeric(results[,5]),li=as.numeric(results[,4]),err="y",gap=TRUE,sfrac=0.005, xlab="European odds ratio",ylab="African American odds ratio",cex=1.5,bty="l")
xat <- pretty(xgap)
xat <- xat[xat!=1.6]
xlab <- ifelse(xat>1.5, xat+0.4, xat)
axis(1,at=xat, labels=xlab)
axis.break(1,1.9,style="slash")
lines(c(0.75,2.5),c(0.75,2.5),lty=2)
close.screen(all=TRUE)
dev.off()

代码输出原样

4

1 回答 1

0

根据来自https://stackoverflow.com/users/1855677/bondeddust的反馈,代码应修改为阅读(见双星号):

results = read.table("./ceu_asn_afr.txt",head=T)
library(plotrix)
jpeg("Figure1.1.jpg",width=2000,height=2000,res=300)
xgap <- ifelse(as.numeric(results[,1]) > 1.9, as.numeric(results[,1])-0.4, as.numeric(results[,1]))
plotCI(xgap,as.numeric(results[,3]),ui=as.numeric(results[,5]),li=as.numeric(results[,4]),err="y",gap=TRUE,sfrac=0.005, xlab="European odds ratio",ylab="African American odds ratio",cex=1.5,bty="l",**xaxt="n"**)
xat <- pretty(xgap)
xat <- xat[xat!=1.6]
xlab <- ifelse(xat>1.5, xat+0.4, xat)
axis(1,at=xat, labels=xlab)
axis.break(1,1.9,style="slash")
lines(c(0.75,2.5),c(0.75,2.5),lty=2)
close.screen(all=TRUE)
dev.off()

因为 plotCI 默认创建轴标签。

于 2015-01-12T20:55:33.950 回答