如何在时间序列数据上使用 ggfortify 库实现分面网格功能?
How to implement the facet grid feature using the ggfortify library on a time series data?
我正在使用 RStudio
并且我有一个名为 data1
.
的 time series
数据(ts
对象)
这是 data1
的样子:
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2014 135 172 179 189 212 47 301 183 247 292 280 325
2015 471 243 386 235 388 257 344 526 363 261 189 173
2016 272 267 197 217 393 299 343 341 315 305 384 497
为了绘制上面的图,我有 运行 这个代码:
plot (data1)
我得到以下情节:
我想要一个按年份划分的情节,我正在考虑实施 ggplot2
中的 facet_grid
功能,但由于我的数据是 ts
对象,我不能直接在上面使用 ggplot2
。
经过一些研究,我发现 ggfortify
库适用于 ts
对象。但是,我很难弄清楚如何使用 facet_grid
功能。
我的目标是从我的 ts
数据中绘制如下图:
'Female' 和 'Male' 将替换为 2014、2015 和 2016 年。X 轴将是月份(一月、二月、三月等)和 y 轴将是 ts
文件中的值。我更喜欢线图而不是点图。
我走的路对吗?还有其他方法可以解决这个问题吗?
我们可以使用ggplot2::autoplot
。我将以 AirPassengers
数据为例。
library(ggplot2)
library(lubridate)
autoplot(AirPassengers) +
facet_grid(. ~ year(Index), scales = "free_x") +
scale_x_date(date_labels = "%b")
我正在使用 RStudio
并且我有一个名为 data1
.
time series
数据(ts
对象)
这是 data1
的样子:
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2014 135 172 179 189 212 47 301 183 247 292 280 325
2015 471 243 386 235 388 257 344 526 363 261 189 173
2016 272 267 197 217 393 299 343 341 315 305 384 497
为了绘制上面的图,我有 运行 这个代码:
plot (data1)
我得到以下情节:
我想要一个按年份划分的情节,我正在考虑实施 ggplot2
中的 facet_grid
功能,但由于我的数据是 ts
对象,我不能直接在上面使用 ggplot2
。
经过一些研究,我发现 ggfortify
库适用于 ts
对象。但是,我很难弄清楚如何使用 facet_grid
功能。
我的目标是从我的 ts
数据中绘制如下图:
'Female' 和 'Male' 将替换为 2014、2015 和 2016 年。X 轴将是月份(一月、二月、三月等)和 y 轴将是 ts
文件中的值。我更喜欢线图而不是点图。
我走的路对吗?还有其他方法可以解决这个问题吗?
我们可以使用ggplot2::autoplot
。我将以 AirPassengers
数据为例。
library(ggplot2)
library(lubridate)
autoplot(AirPassengers) +
facet_grid(. ~ year(Index), scales = "free_x") +
scale_x_date(date_labels = "%b")