R plotrix软件包:使用axis.break()打印两个轴标签

R plotrix软件包:使用axis.break()打印两个轴标签,r,axis-labels,plotrix,R,Axis Labels,Plotrix,我试图创建一个轴上有一个断点的图形 它创建了.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(

我试图创建一个轴上有一个断点的图形

它创建了.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()
results=read.table(“./ceu\u asn\u afr.txt”,head=T)
库(plotrix)
jpeg(“图1.1.jpg”,宽度=2000,高度=2000,分辨率=300)
xgap 1.9,作为数值(结果[,1])-0.4,作为数值(结果[,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=“欧洲优势比”,ylab=“非洲裔美国人优势比”,cex=1.5,bty=“l”)
xat根据来自的反馈,应将代码修订为(见双星号):

results=read.table(“./ceu\u asn\u afr.txt”,head=T)
库(plotrix)
jpeg(“图1.1.jpg”,宽度=2000,高度=2000,分辨率=300)
xgap 1.9,作为数值(结果[,1])-0.4,作为数值(结果[,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=“欧洲优势比”,ylab=“非洲裔美国人优势比”,cex=1.5,bty=“l”,**xaxt=“n”**)

xat怀疑这是由于您同时使用了
axis
axis.break
。plotrix中的
gap.plot(,gap.axis=“x”,…)
函数旨在捆绑这些不同的依赖项。当前代码中的中断位置与构造的标签不匹配。您应该使用
xaxt=“n”
来抑制
plotCI
中的默认x轴。也许,尽管在其他地方这似乎是使用的方法。如果我理解正确的话,Axis.break只是把线放进去。参考这个例子,例如:“也许”?也许什么?我分别提出三点。我没有做任何编码,因为你的例子是不可复制的。如果您可以用前面问题的详细信息替换代码并提出新问题,请这样做。(这是可复制的。)
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()