更改 ggpairs 上面板中的标签
Change label in ggpairs upper panel
您知道如何更改 ggpairs
(Ggally
包)上面板的标签吗?我找到了如何更改大小、字体而不是标签。在这里我想缩短标签("set" pour setosa 等...)。我试着把它放在 labels=c("set", "ver", "vir")
或 upper=list(params=list(size=8),labels=c("set", "ver", "vir"))
中,但它不起作用。
ggpairs(iris, columns=c(2:4), title="variable analysis", colour="Species",
lower=list(params=list(size=2)), upper=list(params=list(size=8)))
有点难看,但你可以这样做(重命名图中的级别):
library(GGally)
gplt <- ggpairs(iris, columns=c(2:4),
title="variable analysis",
colour="Species",
lower=list(params=list(size=2)),
upper=list(params=list(size=6)))
levels(gplt$data$Species)[levels(gplt$data$Species)=="versicolor"] <- "ver"
levels(gplt$data$Species)[levels(gplt$data$Species)=="virginica"] <- "vir"
levels(gplt$data$Species)[levels(gplt$data$Species)=="setosa"] <- "set"
print(gplt)
概念上与@Mike 的解决方案相同,但在一行中。
levels(iris$Species) <- c("set", "ver", "vir")
ggplairs(<...>)
如果您有很多关卡并且不想手动缩写它们,这里还有另一个更灵活的建议:trim 关卡到所需的长度。
levels(iris$Species) <- strtrim(levels(iris$Species), 3)
ggplairs(<...>)
顺便说一下,width
参数也被矢量化了:
rm(iris)
strtrim(levels(iris$Species), c(1, 3, 5))
#[1] "s" "ver" "virgi"
您知道如何更改 ggpairs
(Ggally
包)上面板的标签吗?我找到了如何更改大小、字体而不是标签。在这里我想缩短标签("set" pour setosa 等...)。我试着把它放在 labels=c("set", "ver", "vir")
或 upper=list(params=list(size=8),labels=c("set", "ver", "vir"))
中,但它不起作用。
ggpairs(iris, columns=c(2:4), title="variable analysis", colour="Species",
lower=list(params=list(size=2)), upper=list(params=list(size=8)))
有点难看,但你可以这样做(重命名图中的级别):
library(GGally)
gplt <- ggpairs(iris, columns=c(2:4),
title="variable analysis",
colour="Species",
lower=list(params=list(size=2)),
upper=list(params=list(size=6)))
levels(gplt$data$Species)[levels(gplt$data$Species)=="versicolor"] <- "ver"
levels(gplt$data$Species)[levels(gplt$data$Species)=="virginica"] <- "vir"
levels(gplt$data$Species)[levels(gplt$data$Species)=="setosa"] <- "set"
print(gplt)
概念上与@Mike 的解决方案相同,但在一行中。
levels(iris$Species) <- c("set", "ver", "vir")
ggplairs(<...>)
如果您有很多关卡并且不想手动缩写它们,这里还有另一个更灵活的建议:trim 关卡到所需的长度。
levels(iris$Species) <- strtrim(levels(iris$Species), 3)
ggplairs(<...>)
顺便说一下,width
参数也被矢量化了:
rm(iris)
strtrim(levels(iris$Species), c(1, 3, 5))
#[1] "s" "ver" "virgi"