RStudio对n个图中的n个数字变量的一个数值变量

时间:2017-11-28 13:35:33

标签: r ggplot2 reshape2

我用户和eviews基本上绘制了散点图矩阵。

在下图中,我有13个不同的组数据,Eviews针对12个组绘制了一个组数据。一个图表中的12个图中的数据与回归线。

enter image description here

如何使用Rstudio实现相同的图形?

1 个答案:

答案 0 :(得分:2)

以下是如何在ggplot中执行请求的绘图的示例:

首先是一些数据:

z <- matrix(rnorm(1000), ncol= 10)

这里的基本思想是将宽矩阵转换为长格式,其中与所有其他变量相比较的变量与其他变量重复多次。这些其他变量中的每一个都在键列中获得特定标签。 ggplot喜欢这种格式的数据

library(tidyverse)
z %>%
  as.tibble() %>% #convert matrix to tibble or data.frame
  gather(key, value, 2:10) %>% #convert to long format specifying variable columns 2:10
  mutate(key = factor(key, levels = paste0("V", 1:10))) %>% #specify levels so the facets go in the correct order to avoid V10 being before V2
  ggplot() + 
  geom_point(aes(value, V1))+ #plot points
  geom_smooth(aes(value, V1), method = "lm", se = F)+ #plot lm fit without se
  facet_wrap(~key) #facet by key

enter image description here