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


R ggplot2 scale_linewidth 線寬比例


scale_linewidth 縮放線條和多邊形筆劃的寬度。由於曆史原因,也可以使用 size 美學來控製這一點,但鼓勵使用 linewidth 明確區分區域美學和筆畫寬度美學。

用法

scale_linewidth(
  name = waiver(),
  breaks = waiver(),
  labels = waiver(),
  limits = NULL,
  range = c(1, 6),
  trans = "identity",
  guide = "legend"
)

scale_linewidth_binned(
  name = waiver(),
  breaks = waiver(),
  labels = waiver(),
  limits = NULL,
  range = c(1, 6),
  n.breaks = NULL,
  nice.breaks = TRUE,
  trans = "identity",
  guide = "bins"
)

參數

name

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

breaks

之一:

labels

之一:

  • NULL 無標簽

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

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

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

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

limits

之一:

  • NULL 使用默認比例範圍

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

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

range

長度為 2 的數值向量,指定變換後繪圖符號的最小和最大尺寸。

trans

對於連續比例,變換對象的名稱或對象本身。內置轉換包括"asn"、"atanh"、"boxcox"、"date"、"exp"、"hms"、"identity"、"log"、"log10"、"log1p","log2","logit"、"modulus"、"probability"、"probit"、"pseudo_log"、"reciprocal"、"reverse"、"sqrt" 和 "time"。

變換對象將變換、其逆變換以及用於生成中斷和標簽的方法捆綁在一起。轉換對象在 scales 包中定義,稱為 <name>_trans (例如 scales::boxcox_trans() )。您可以使用 scales::trans_new() 創建自己的轉換。

guide

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

n.breaks

指導主要中斷次數的整數。該算法可能會選擇稍微不同的數字以確保良好的中斷標簽。僅在 breaks = waiver() 時有效。使用 NULL 使用轉換給出的默認中斷數。

nice.breaks

邏輯性強。應該嘗試將中斷設置為合適的值,而不是在限製之間完全均勻地間隔。如果TRUE(默認),比例將要求轉換對象創建中斷,這可能會導致中斷數量與請求的數量不同。如果明確給出中斷,則忽略。

例子

p <- ggplot(economics, aes(date, unemploy, linewidth = uempmed)) +
  geom_line(lineend = "round")
p

p + scale_linewidth("Duration of\nunemployment")

p + scale_linewidth(range = c(0, 4))


# Binning can sometimes make it easier to match the scaled data to the legend
p + scale_linewidth_binned()


相關用法


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