将轴标签添加到 ggcorrplot?
Add Axis Labels to ggcorrplot?
如何向 ggcorrplot 添加轴标签?我有一个问卷的两次独立尝试之间的相关性图。 X 轴代表第一次尝试,Y 轴代表第二次尝试。我想标记轴以表明这就是此处所代表的内容。
我的代码如下所示:
corrQData <- round(cor(Attempt1, Attempt2), digits = 1)
ggcorrplot(corrQData,
outline.color = "white",
ggtheme = theme_bw(),
colors = c("#F8696B", "#FFEB84", "#63BE7B"),
legend.title = "Correlation",
lab = TRUE,
lab_size = 3,
tl.cex = 8,
tl.srt = 0,
title = "Correlation Between Questionnaire Attempts") +
theme(plot.title = element_text(hjust = 0.5, size=10), legend.title = element_text(size = 10))
我的剧情是这样的:
我尝试将 + scale_x_discreet(name = "Attempt 1")
添加到我的 ggcorrplot 代码的末尾,但它没有做任何事情。
您必须覆盖 ggcorrplot
的默认行为,即不显示轴标签。通过添加带有 ggplot2::labs()
的标签(scale_x_discrete(name = ...)
也可以)并更改情节的主题
来做到这一点
library(ggcorrplot)
corrdata <- round(cor(mtcars), 1)
ggcorrplot(corrdata) +
ggplot2::labs(x = 'X label', y = 'Y label') +
ggplot2::theme(
axis.title.x = element_text(angle = 0, color = 'grey20'),
axis.title.y = element_text(angle = 90, color = 'grey20')
)
这可以使用 {ggcorrplot2} 来实现。
虽然 ggcorrplot 开发人员可能有充分的理由不包括轴标签(例如,成对矩阵不需要它们),但在某些情况下,希望指定轴标签和轴刻度可能是有意义的.例如。比较两组不同变量之间的相关性,并排除组内进行的任何比较时。
ggcorrplot2::ggcorrplot() 通过在内部使用以下内容来抑制轴标签
theme(axis.title = element_blank())
如果你想 over-rule 这个并提供轴标签,你必须指定要添加的标签和 re-specify axis.title 行为,例如
corrdata <- round(cor(mtcars), 1)
ggcorrplot2::ggcorrplot(corrdata) +
ggplot2::labs(x = 'Variable Set 1', y = 'Variable Set 2') +
ggplot2::theme(axis.title = element_text())
也可以使用
手动指定轴刻度标签
corrdata <- round(cor(mtcars), 1)
ggcorrplot2::ggcorrplot(corrdata) +
ggplot2::labs(x = 'Variable Set 1', y = 'Variable Set 2') +
ggplot2::theme(axis.title = element_text())+
ggplot2::scale_x_continuous(breaks = 1:dim(corrdata)[1], labels = c("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k"),
expand = c(0, 0))+
ggplot2::scale_y_reverse(breaks = 1:dim(corrdata)[1], labels = c("l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v"),
expand = c(0, 0))
Plot with modified axis labeling
如何向 ggcorrplot 添加轴标签?我有一个问卷的两次独立尝试之间的相关性图。 X 轴代表第一次尝试,Y 轴代表第二次尝试。我想标记轴以表明这就是此处所代表的内容。
我的代码如下所示:
corrQData <- round(cor(Attempt1, Attempt2), digits = 1)
ggcorrplot(corrQData,
outline.color = "white",
ggtheme = theme_bw(),
colors = c("#F8696B", "#FFEB84", "#63BE7B"),
legend.title = "Correlation",
lab = TRUE,
lab_size = 3,
tl.cex = 8,
tl.srt = 0,
title = "Correlation Between Questionnaire Attempts") +
theme(plot.title = element_text(hjust = 0.5, size=10), legend.title = element_text(size = 10))
我的剧情是这样的:
我尝试将 + scale_x_discreet(name = "Attempt 1")
添加到我的 ggcorrplot 代码的末尾,但它没有做任何事情。
您必须覆盖 ggcorrplot
的默认行为,即不显示轴标签。通过添加带有 ggplot2::labs()
的标签(scale_x_discrete(name = ...)
也可以)并更改情节的主题
library(ggcorrplot)
corrdata <- round(cor(mtcars), 1)
ggcorrplot(corrdata) +
ggplot2::labs(x = 'X label', y = 'Y label') +
ggplot2::theme(
axis.title.x = element_text(angle = 0, color = 'grey20'),
axis.title.y = element_text(angle = 90, color = 'grey20')
)
这可以使用 {ggcorrplot2} 来实现。
虽然 ggcorrplot 开发人员可能有充分的理由不包括轴标签(例如,成对矩阵不需要它们),但在某些情况下,希望指定轴标签和轴刻度可能是有意义的.例如。比较两组不同变量之间的相关性,并排除组内进行的任何比较时。
ggcorrplot2::ggcorrplot() 通过在内部使用以下内容来抑制轴标签
theme(axis.title = element_blank())
如果你想 over-rule 这个并提供轴标签,你必须指定要添加的标签和 re-specify axis.title 行为,例如
corrdata <- round(cor(mtcars), 1)
ggcorrplot2::ggcorrplot(corrdata) +
ggplot2::labs(x = 'Variable Set 1', y = 'Variable Set 2') +
ggplot2::theme(axis.title = element_text())
也可以使用
手动指定轴刻度标签corrdata <- round(cor(mtcars), 1)
ggcorrplot2::ggcorrplot(corrdata) +
ggplot2::labs(x = 'Variable Set 1', y = 'Variable Set 2') +
ggplot2::theme(axis.title = element_text())+
ggplot2::scale_x_continuous(breaks = 1:dim(corrdata)[1], labels = c("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k"),
expand = c(0, 0))+
ggplot2::scale_y_reverse(breaks = 1:dim(corrdata)[1], labels = c("l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v"),
expand = c(0, 0))
Plot with modified axis labeling