R 使用ggplot绘制多个单独的相关图
这将是一个非常基本和天真的问题,但由于我的R和编程技能非常有限,我不知道如何解决它。如果你们能在这件事上帮助我,我将不胜感激 我想绘制多个相关图,将固定的x轴(Sepal.Length,在下面的示例中)与数据集中的每一列作为y轴(Sepal.Width、Petal.Length和Petal.Width)进行比较。我怀疑我可能需要使用apply,但我不知道如何在函数中构建它 现在我可以一个接一个地手动完成,但这一点都没有帮助。下面,我将分享我想应用于数据集中每一列的代码片段R 使用ggplot绘制多个单独的相关图,r,ggplot2,correlation,scatter,R,Ggplot2,Correlation,Scatter,这将是一个非常基本和天真的问题,但由于我的R和编程技能非常有限,我不知道如何解决它。如果你们能在这件事上帮助我,我将不胜感激 我想绘制多个相关图,将固定的x轴(Sepal.Length,在下面的示例中)与数据集中的每一列作为y轴(Sepal.Width、Petal.Length和Petal.Width)进行比较。我怀疑我可能需要使用apply,但我不知道如何在函数中构建它 现在我可以一个接一个地手动完成,但这一点都没有帮助。下面,我将分享我想应用于数据集中每一列的代码片段 ggplot(iris
ggplot(iris, aes(x=Sepal.Length, y=Sepal.Width, color=Species)) +
geom_smooth(aes(group = 1), method=lm,) +
geom_point(size=4, shape=20, alpha=0.6) + theme(legend.position="none") +
annotate(x=min(iris$Sepal.Width),y=min(iris$Sepal.Width),hjust=.2,
label=paste("R = ", round(cor(iris$Sepal.Width, iris$Sepal.Width),2)),
geom="text", size=4)
生成所有绘图后,我的想法是使用grid.arrange软件包并排绘制所有绘图。您看起来像这样吗
library(tidyr)
library(dplyr)
library(ggplot2)
iris %>% select(-Species) %>%
gather(YCol, YValue, -Sepal.Length) %>%
ggplot(aes(x=Sepal.Length, y=YValue)) +
geom_point() +
facet_grid(YCol~.)
它包含相同的
Y轴
,但如果您不需要,则可以使用scales=“free_Y”
Hi-Prradep,非常感谢您的评论。这显然是一个选择,但我仍然面临一些问题。第一个是,我正在绘制12个图形,使用facet_grid属性在同一列中绘制所有图形,使每个图形缩小并超出比例。第二,我不知道如何绘制不同图的相关系数。尝试使用与ggplot中使用的相同的YValue参数,但出现错误。最后也是更容易修复的(但对我来说不是),当我尝试使用因子种类设置不同的颜色时,我得到了一个美学错误。知道如何解决吗?如果问题与此问题相关,请用详细信息更新问题。如果没有,那么相应地问一个新问题。