gpt4 book ai didi

r - ggplot2/GGally 中的散点矩阵,没有密度图

转载 作者:行者123 更新时间:2023-12-02 12:52:36 28 4
gpt4 key购买 nike

我使用以下代码使用 ggplot2 扩展 GGally 制作了一个散点矩阵

  ggscatmat(dat2, columns = 2:6, color="car", alpha=0.8) +
ggtitle("Korrelation") +
theme(axis.text.x = element_text(angle=-40, vjust=1, hjust=0, size=10))

现在我的问题是,在这种情况下,我真的不需要密度线图或相关系数。,我只想要矩阵中的散点图。有没有办法“删除”其他方面?我在文档中找不到任何内容。

请原谅我糟糕的英语,感谢您的任何建议或帮助!

Scattermatrix with ggscatmat {GGally}

编辑:我发现 ggpairs 还不是完美的解决方案:

ggpairs(dat2, columns = 2:6, mapping= aes(color=car), 
upper = "blank",diag = "blank") +
theme(axis.text.x = element_text(angle=-40, vjust=1, hjust=0, size=10))

但现在不再有图例了,两个标签看起来好像情节还没有完全加载:enter image description here

最佳答案

您可以通过修改 gtable 来手动删除部分绘图

 removePanels <- function(plot) {

g <- ggplotGrob(plot)

# get panels to remove: upper + diagonal
ids <- grep("panel", g$layout$name)
cols <- sqrt(diff(range(ids)) +1)
remove <- matrix(ids, ncol=cols)
remove <- remove[upper.tri(remove, diag=TRUE)]

# remove certain axis
yax <- grep("axis-l", g$layout$name)[1] # first
xax <- tail(grep("axis-b", g$layout$name), 1) #last

# remove cetain strips
ystrip <- grep("strip-right", g$layout$name)[1]
xstrip <- tail(grep("strip-top", g$layout$name), 1)

# remove grobs
g$grobs[c(remove, xax, yax, ystrip, xstrip)] <- NULL
g$layout <- g$layout[-c(remove, xax, yax, ystrip, xstrip),]
g
}

# draw
library(GGally)
library(ggplot2)
library(grid)

p <- ggscatmat(iris, columns = 1:4, color="Species", alpha=0.8) +
theme(axis.text.x = element_text(angle=-40, vjust=1, hjust=0, size=10))

grid.newpage()
grid.draw(removePanels(p))

关于r - ggplot2/GGally 中的散点矩阵,没有密度图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36741664/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com