以不可見方式回傳
當函式的主要目的在於產生輸出,例如繪製圖形或在主控台列印內容時,你可能不希望同時印出回傳值。這種情況下,應該使用【不可見回傳】(invisibly returned)(https://www.rdocumentation.org/packages/base/topics/invisible)。
基礎 R 的繪圖函式會回傳 NULL,因為它的主要目的是畫圖。若你想在管線(pipe)程式碼中使用,這並不方便;理想做法是以不可見方式回傳用於繪圖的資料,讓它能被接續傳遞到下一步。
回想 plot() 具有【公式介面】(https://www.rdocumentation.org/packages/graphics/topics/plot.formula):你不必提供 x 與 y 的向量,而是以一個公式描述資料框中要放在 x、y 軸的欄位,並用 data 參數指向資料框。注意就像 lm() 一樣,參數順序看起來「顛倒」,因為細節參數 formula 會先於 data 參數。
plot(y ~ x, data = data)
本練習屬於課程
R 函式撰寫入門
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Using cars, draw a scatter plot of dist vs. speed
plt_dist_vs_speed <- ___(___ ~ ___, data = ___)
# Oh no! The plot object is NULL
plt_dist_vs_speed