r - 在 R 中的成对绘图空间图像中嵌入绘图
问题描述
我有一个用 ggplot2 制作的对图和一个条形图。我想知道是否可以将条形图嵌入到配对图的空间中。它看起来像这样:
这是两个图的代码:
#pairs plot
pairs(pca$eigenvect[,1:4], labels = lbls, col=tab$pop,
lower.panel = NULL)
#barplot
ggplot(head_eigen, aes(x=pcindex, y = varexp), group=1) +
geom_bar(stat = "identity", width=0.6, fill="steelblue") +
theme_minimal() +
geom_point(color="darkblue")+
geom_text(aes(label=varexp), vjust=-0.3, size=3.5)+
geom_line(color="darkblue" ,group=1)+
ylim(0,5)+
ylab("Explained variance (%)") + xlab("Principle Component Number")
我已经尝试过ggplot
函数annotation_custom
和cowplot
函数ggdraw
,但它们中的任何一个似乎都可以工作,因为对并不是真正的单一情节。
有任何想法吗?
提前致谢
解决方案
随机数据:
pca = data.frame(e1=sort(rnorm(100, 0, 1)),e2=sort(rnorm(100, 0, 1)),e3=sort(rnorm(100, 0, 1)),e4=sort(rnorm(100, 0, 1)))
我在将绘图存储为变量时遇到了一些麻烦pairs()
,但设法%<a-%
从pryr
库中使用它:
library(pryr)
library(grid)
p1 %<a-% pairs(pca[,1:4],lower.panel = NULL)
p2 = ggplot(pca, aes(x=e1,y=e2)) + geom_point()
vp <- viewport(width = 0.4, height = 0.4, x = 0.25, y = 0.3)
print(p1)
print(p2, vp=vp)
推荐阅读
- python - [:,:,::-1] 和 [:,:,:] 有什么区别
- python - Python 和 Pandas:使用函数替换文本
- c++ - makefile : 如何链接目标文件
- ruby - 我对此(初学者)示例代码有很多疑问
- android - android中setNotificationPolicy和setInterruptionFilter的区别
- c# - 带有输入参数的 MVC 存储过程并使用实体框架获取输出
- java - 我如何实现一个泛型类,该类在java中调用指定接口的静态方法
- perl - 在“uniq”之后的“排序”中出现“不是数字”错误
- c# - 如何确保在处理图像之前完成上传
- apache-kafka - 使用 gRPC 微服务和 Kubernetes 进行路由