開始使用免費開始

為繪圖而提取

從 datetime 提取各個元件在探索資料時特別好用。本章前面你已經匯入了奧克蘭的每日天氣資料,並繪製了 10 年每日最高氣溫的時間序列圖。那張圖能概覽這 10 年的整體趨勢,但要看清每年的季節性變化並不容易。

在這個練習中,你會利用日期的各個元件,來探索一年之中的最高氣溫變化模式。第一步是建立一些新欄位來存放提取出的部分,接著你會用它們畫出幾個圖表。

本練習屬於課程

在 R 中處理日期與時間

檢視課程

練習說明

  • 使用 mutate() 建立三個新欄位:yearydaymonth,分別放入 date 欄位對應的元件。別忘了把月份標示為名稱。
  • 繪製一個圖:x 軸為 yday,y 軸為 max_temp,並以 year 分組連線。*在此圖上,每一年是一條線,x 軸從 Jan 1 到 Dec 31。*
  • 換個角度觀察:建立一個 ridgeline plot(先前稱為 joyplot),x 軸為 max_temp,y 軸為 month,並使用 ggridges 套件的 geom_density_ridges()

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

library(ggplot2)
library(dplyr)
library(ggridges)

# Add columns for year, yday and month
akl_daily <- akl_daily %>%
  mutate(
    ___ = ___(date),
    ___ = ___(date),
    ___ = ___(date, ___))

# Plot max_temp by yday for all years
ggplot(akl_daily, aes(x = ___, y = ___)) +
  geom_line(aes(group = ___), alpha = 0.5)

# Examine distribution of max_temp by month
ggplot(akl_daily, aes(x = ___, y = ___, height = ..density..)) +
  geom_density_ridges(stat = "density")
編輯並執行程式碼