我正在尝试使用R中的图表包创建流程图。我希望3个中间坐标保持在右边。它们是(3,4)(4,5)和(5,6),但它们位于中间。对于4、5和6堆叠在3以下的盒子,我该怎么办?为了使3个框在右侧而不是在中心对齐,是否必须在左侧有一些内容?我已经在下面发布了我的代码。
谢谢
pdf("testchart.pdf")
require(diagram)
openplotmat()
elpos<-coordinates(c(1,2,1,1,1,2,4))
fromto <- matrix(ncol=2,byrow=TRUE,
data=c(1,2,
1,3,
3,4,
4,5,
5,6,
2,7,
6,8,
7,9,
7,10,
8,11,
8,12
)
)
nr <-nrow(fromto)
arrpos <- matrix(ncol=2,nrow=nr)
for (i in 1:nr)
arrpos[i,] <- treearrow (
to=elpos[fromto[i,2],],
from=elpos[fromto[i,1],],
lwd=1,arr.pos=0.5,
arr.side=1,
centre=NULL,
arr.length=0.5
)
my_text_size <- 1.3
textrect (elpos[1,],radx=.3,rady=.05,cex=0.8,lab=paste("test"))
textrect (elpos[2,],radx=.15,rady=.05,cex=0.8,lab=paste("test"))
textrect (elpos[3,],radx=.15,rady=.05,cex=0.8,lab=paste("test"))
textrect (elpos[4,],radx=.15,rady=.06,cex=0.8,lab=paste("test"))
textrect (elpos[5,],radx=.15,rady=.06,cex=0.8,lab=paste("test"))
textrect (elpos[6,],radx=.15,rady=.06,cex=0.8,lab=paste("test"))
textrect (elpos[7,],radx=.2,rady=.04,cex=0.8,lab=paste("test"))
textrect (elpos[8,],radx=.2,rady=.04,cex=0.8,lab=paste("test"))
textrect (elpos[9,],radx=.1,rady=.05,cex=0.8,lab=paste("test"))
textrect (elpos[11,],radx=.1,rady=.05,cex=0.8,lab=paste("test"))
textrect (elpos[10,],radx=.1,rady=.05,cex=0.8,lab=paste("test"))
textrect (elpos[12,],radx=.1,rady=.05,cex=0.8,lab=paste("test"))
dev.off()