10.1 簡介
靈活性和魯棒性的敵人是:重複!
10.2 迭代
last_plot()用於獲取最後一次繪製或修改的圖形。
10.3 繪圖模板
gradient_rb <- scale_colour_gradient(low = "red", high = "blue") qplot(cty, hwy, data = mpg, colour = displ) + gradient_rb qplot(bodywt, brainwt, data = msleep, colour = awake, log = "xy") + gradient_rb
ggplot2圖形中的每一個組件都是一個對象,可以被創建、存儲並獨立應用於某個圖形中。
另外,ggplot2中的組件也可以存儲爲list格式的列表。想某個圖形中添加組件列表和將其中的組件按順序逐個添加是一樣的效果。
xquiet <- scale_x_continuous("", breaks = NULL) yquiet <- scale_y_continuous("", breaks = NULL) quiet <- list(xquiet, yquiet) qplot(mpg, wt, data = mtcars) + quiet qplot(displ, cty, data = mpg) + quiet
類似的,創建一個改變圖形默認設置的函數也可以,下例創建了一個在圖形中添加線性模型的函數。
geom_lm <- function(formula = y ~ x) { geom_smooth(formula = formula, se = FALSE, method = "lm") } qplot(mpg, wt, data = mtcars) + geom_lm() library(splines) qplot(mpg, wt, data = mtcars) + geom_lm(y ~ ns(x, 3))