當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


R ggplot2 scale_date 日期/時間數據的位置刻度

這些是三個日期/時間類的默認比例。這些通常會自動添加。要手動覆蓋,請使用 scale_*_date 表示日期(類 Date ),使用 scale_*_datetime 表示日期時間(類 POSIXct ),使用 scale_*_time 表示時間(類 hms )。

用法

scale_x_date(
  name = waiver(),
  breaks = waiver(),
  date_breaks = waiver(),
  labels = waiver(),
  date_labels = waiver(),
  minor_breaks = waiver(),
  date_minor_breaks = waiver(),
  limits = NULL,
  expand = waiver(),
  oob = censor,
  guide = waiver(),
  position = "bottom",
  sec.axis = waiver()
)

scale_y_date(
  name = waiver(),
  breaks = waiver(),
  date_breaks = waiver(),
  labels = waiver(),
  date_labels = waiver(),
  minor_breaks = waiver(),
  date_minor_breaks = waiver(),
  limits = NULL,
  expand = waiver(),
  oob = censor,
  guide = waiver(),
  position = "left",
  sec.axis = waiver()
)

scale_x_datetime(
  name = waiver(),
  breaks = waiver(),
  date_breaks = waiver(),
  labels = waiver(),
  date_labels = waiver(),
  minor_breaks = waiver(),
  date_minor_breaks = waiver(),
  timezone = NULL,
  limits = NULL,
  expand = waiver(),
  oob = censor,
  guide = waiver(),
  position = "bottom",
  sec.axis = waiver()
)

scale_y_datetime(
  name = waiver(),
  breaks = waiver(),
  date_breaks = waiver(),
  labels = waiver(),
  date_labels = waiver(),
  minor_breaks = waiver(),
  date_minor_breaks = waiver(),
  timezone = NULL,
  limits = NULL,
  expand = waiver(),
  oob = censor,
  guide = waiver(),
  position = "left",
  sec.axis = waiver()
)

scale_x_time(
  name = waiver(),
  breaks = waiver(),
  minor_breaks = waiver(),
  labels = waiver(),
  limits = NULL,
  expand = waiver(),
  oob = censor,
  na.value = NA_real_,
  guide = waiver(),
  position = "bottom",
  sec.axis = waiver()
)

scale_y_time(
  name = waiver(),
  breaks = waiver(),
  minor_breaks = waiver(),
  labels = waiver(),
  limits = NULL,
  expand = waiver(),
  oob = censor,
  na.value = NA_real_,
  guide = waiver(),
  position = "left",
  sec.axis = waiver()
)

參數

name

秤的名稱。用作軸或圖例標題。如果 waiver() (默認值),則比例名稱取自用於該美學的第一個映射。如果是 NULL ,則圖例標題將被省略。

breaks

之一:

  • NULL 不間斷

  • waiver() 用於 date_breaks 指定的中斷

  • 給出中斷位置的 Date /POSIXct 向量

  • 將限製作為輸入並返回中斷作為輸出的函數

date_breaks

給出中斷之間距離的字符串,例如“2 周”或“10 年”。如果同時指定了breaksdate_breaks,則date_breaks 獲勝。有效規範為'sec', 'min', 'hour', 'day', 'week', 'month' 或'year',可選地後跟's'。

labels

之一:

  • NULL 無標簽

  • waiver() 用於由轉換對象計算的默認標簽

  • 給出標簽的字符向量(必須與 breaks 長度相同)

  • 表達向量(必須與中斷長度相同)。有關詳細信息,請參閱?plotmath。

  • 將中斷作為輸入並返回標簽作為輸出的函數。還接受 rlang lambda 函數表示法。

date_labels

給出標簽格式規範的字符串。代碼在 strftime() 中定義。如果同時指定了 labelsdate_labels,則 date_labels 獲勝。

minor_breaks

之一:

  • NULL 不間斷

  • waiver() 用於 date_minor_breaks 指定的中斷

  • 給出小中斷位置的 Date /POSIXct 向量

  • 將限製作為輸入並返回次要中斷作為輸出的函數

date_minor_breaks

給出小中斷之間距離的字符串,例如“2 周”或“10 年”。如果同時指定了minor_breaksdate_minor_breaks,則date_minor_breaks 獲勝。有效規範為'sec', 'min', 'hour', 'day', 'week', 'month' 或'year',可選地後跟's'。

limits

之一:

  • NULL 使用默認比例範圍

  • 長度為 2 的數值向量,提供尺度限製。使用NA來引用現有的最小值或最大值

  • 接受現有(自動)限製並返回新限製的函數。還接受 rlang lambda 函數表示法。請注意,對位置比例設置限製將刪除限製之外的數據。如果目的是縮放,請使用坐標係中的 limit 參數(請參閱 coord_cartesian() )。

expand

對於位置刻度,範圍擴展常量的向量,用於在數據周圍添加一些填充,以確保它們放置在距軸一定距離的位置。使用便捷函數expansion() 生成expand 參數的值。默認情況下,對於連續變量,每側擴展 5%,對於離散變量,每側擴展 0.6 個單位。

oob

之一:

guide

用於創建指南或其名稱的函數。有關詳細信息,請參閱guides()

position

對於位置刻度,軸的位置。 leftright 表示 y 軸,topbottom 表示 x 軸。

sec.axis

sec_axis() 用於指定輔助軸。

timezone

用於在軸上顯示的時區。默認值 ( NULL ) 使用數據中編碼的時區。

na.value

缺失值將替換為該值。

也可以看看

sec_axis() 了解如何指定輔助軸

其他位置刻度:scale_x_binned()scale_x_continuous()scale_x_discrete()

例子

last_month <- Sys.Date() - 0:29
set.seed(1)
df <- data.frame(
  date = last_month,
  price = runif(30)
)
base <- ggplot(df, aes(date, price)) +
  geom_line()

# The date scale will attempt to pick sensible defaults for
# major and minor tick marks. Override with date_breaks, date_labels
# date_minor_breaks arguments.
base + scale_x_date(date_labels = "%b %d")

base + scale_x_date(date_breaks = "1 week", date_labels = "%W")

base + scale_x_date(date_minor_breaks = "1 day")


# Set limits
base + scale_x_date(limits = c(Sys.Date() - 7, NA))
#> Warning: Removed 22 rows containing missing values (`geom_line()`).


源代碼:R/scale-date.R

相關用法


注:本文由純淨天空篩選整理自Hadley Wickham等大神的英文原創作品 Position scales for date/time data。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。