【发布时间】:2018-08-29 02:04:37
【问题描述】:
我有一个类似于下面 MWE 中的函数来生成 PCA 双图,纵横比为 1:1,以不影响其解释;这意味着有时我会根据数据得到更窄或更宽的图。
我希望能够以某种方式检测绘图区域并制作适当宽度和高度的 pdf 以很好地适应绘图,否则我会在输出文件中出现不需要的额外空间。
检查下面的 MWE:
pcaplot <- function(pobj, df, groupvar, filename){
library(ggbiplot)
P <- ggbiplot(pobj,
obs.scale = 1,
var.scale=1,
ellipse=T,
circle=F,
varname.size=3,
var.axes=T,
groups=df[,groupvar],
alpha=0)
P$layers <- c(geom_point(aes(color=df[,groupvar]), cex=5), P$layers)
pdf(file=paste(filename,".pdf",sep=""), height=14, width=14) #USE PROPER WIDTH AND HEIGHT DEPENDING ON PLOT AREA
print(
P
)
dev.off()
}
data(iris)
pca.obj <- prcomp(iris[,1:4], center=TRUE, scale.=TRUE)
pcaplot(pca.obj, iris, "Species", "test")
谢谢!
【问题讨论】: