R 如何快速绘制TIBLE的一列与所有其他列的图表?
我有一个tibble,其中有一个year列,其他列中有几个其他变量。我想使用ggplot2创建一些随时间变化的绘图,其中所有其他列都是按时间绘制的。有没有一种不用手动创建所有绘图就可以轻松完成的方法?下面是一些示例代码:R 如何快速绘制TIBLE的一列与所有其他列的图表?,r,plot,ggplot2,tidyverse,tibble,R,Plot,Ggplot2,Tidyverse,Tibble,我有一个tibble,其中有一个year列,其他列中有几个其他变量。我想使用ggplot2创建一些随时间变化的绘图,其中所有其他列都是按时间绘制的。有没有一种不用手动创建所有绘图就可以轻松完成的方法?下面是一些示例代码: library(tidyverse) library(gridExtra) temp <- tibble( num = 1:10, v = num +num ^ 2, w = num ^ 2, z = num + 3 ) temp p1 <-
library(tidyverse)
library(gridExtra)
temp <- tibble(
num = 1:10,
v = num +num ^ 2,
w = num ^ 2,
z = num + 3
)
temp
p1 <- ggplot(temp, aes(x = num, y = v)) +
geom_point() + labs(y = "v")
p2 <- ggplot(temp, aes(x = num, y = w)) +
geom_point() + labs(y = "w")
p3 <- ggplot(temp, aes(x = num, y = z)) +
geom_point() + labs(y = "z")
grid.arrange(p1, p2, p3, nrow = 2, ncol = 2)
库(tidyverse)
图书馆(gridExtra)
temp您可以使用包GGally
进行探索性数据分析
library(GGally)
ggpairs(data = temp)
虽然这个解决方案提供了比我需要的更多的信息,但它并不能立即解释所有内容,但它确实能以某种方式工作。虽然我一定会记住这一点,以便将来分析!谢谢谢谢你的解决方案!它确实有效,产生的效果与@RoyalTS提出的解决方案几乎相同。根据我的经验,他只是更容易解释它是如何工作的。@RoyalTS的回答使用了刻面,它创建了一个包含多个面板的单一绘图。我的回答创建了三个单独的绘图,并将它们与网格一起布置。排列<代码>映射
只需在列上迭代以创建单独的绘图map
是一个tidyverse
函数,类似于R基的Lappy
。我不知道!谢谢你的一点点知识。
temp %>%
tidyr::gather(variable, value, -num) %>%
ggplot(aes(num, value)) +
geom_point() +
facet_wrap(~variable, ncol = 2, nrow = 2)
library(GGally)
ggpairs(data = temp)