【发布时间】:2020-11-19 20:36:13
【问题描述】:
我有一个 PCA 图和方差比例表。当我在绘图上方绘制提到的表(使用 tableGrob)时,它们之间有很多空间。如何将它们“更近”地连接并将表格与 PCA 图的右上方对齐?
library(data.table)
library(MASS)
library(ggplot2)
library(reshape2)
library(grid)
library(gridExtra)
#PCA
iris.pca <- prcomp(iris[,1:4], scale. = TRUE)
dataIris.pca <- data.frame(summary(iris.pca)$importance)
dat <- data.table(PC1=iris.pca$x[,1],PC2=iris.pca$x[,2],Species= iris[,5])
dat <- dat[order(dat$Species),]
#PCA plot
mainPlot <- ggplot(dat,aes(x=PC1,y=PC2)) + geom_point(size = 2, aes(color=Species))
mainPlot
#Prop variance table
Prop <- as.data.frame(summary(iris.pca)[[6]])
PropTable <- round(Prop[2,],3)
#Prop variance plot
propPlot <- tableGrob(PropTable,theme = ttheme_default(base_size = 8))
grid.arrange(propPlot, mainPlot, ncol=1)
【问题讨论】:
-
可能是
cowplot::plot_grid(propPlot, mainPlot, nrow = 2, rel_heights = 1:4)。