如何在时间序列数据上创建 facet_grid?
How to create facet_grid on timeseries data?
我有这样的数据集:
我想显示趋势,x 轴包含年份值,y 轴包含列中的相应值,所以也许
ggplot(data,aes(year,bm))
我不仅想绘制一列,还想绘制更多列。在一个情节中,它似乎过于详细,我想利用 facet_grid 将情节很好地并排排列。但是它对我的数据不起作用,因为我认为我没有 'real' 对象可以比较。
有谁知道我如何实现 facet_grid 所以它就像这样(在可能的情况下 p1=BM 和 p2=BMSW):
问题出在您的数据格式上。这是一个带有一些假数据的例子
library(tidyverse)
##Create some fake data
set.seed(3)
data <- tibble(
year = 1991:2020,
bm = rnorm(30),
bmsw = rnorm(30),
bmi = rnorm(30),
bmandinno = rnorm(30),
bmproc = rnorm(30),
bmart = rnorm(30)
)
##Gather the variables to create a long dataset
new_data <- data %>%
gather(model, value, -year)
##plot the data
ggplot(new_data, aes(x = year, y = value)) +
geom_point() +
geom_smooth(method = "lm", se = FALSE) +
facet_grid(~model)
我有这样的数据集:
我想显示趋势,x 轴包含年份值,y 轴包含列中的相应值,所以也许
ggplot(data,aes(year,bm))
我不仅想绘制一列,还想绘制更多列。在一个情节中,它似乎过于详细,我想利用 facet_grid 将情节很好地并排排列。但是它对我的数据不起作用,因为我认为我没有 'real' 对象可以比较。 有谁知道我如何实现 facet_grid 所以它就像这样(在可能的情况下 p1=BM 和 p2=BMSW):
问题出在您的数据格式上。这是一个带有一些假数据的例子
library(tidyverse)
##Create some fake data
set.seed(3)
data <- tibble(
year = 1991:2020,
bm = rnorm(30),
bmsw = rnorm(30),
bmi = rnorm(30),
bmandinno = rnorm(30),
bmproc = rnorm(30),
bmart = rnorm(30)
)
##Gather the variables to create a long dataset
new_data <- data %>%
gather(model, value, -year)
##plot the data
ggplot(new_data, aes(x = year, y = value)) +
geom_point() +
geom_smooth(method = "lm", se = FALSE) +
facet_grid(~model)