我有一系列ggplot圖表,我將重複一些小的變化。我想將這些帶有選項的qplots包裝到一個函數中以避免代碼中的重複。在R中使用可選參數書寫ggplot函數
我的問題是,我使用+ facet_wrap()選項的一些圖,但對於其他人我不是。即我需要facet wrap作爲可選參數。當它包含時,代碼需要使用facets參數中提供的變量調用+ facet_wrap()。
所以最好我的功能是這樣的,有刻面作爲一個可選的參數:
$ qhist(variable, df, heading, facets)
我曾試着用搜索引擎如何添加可選參數,他們建議要麼傳遞缺省值,或者如果循環使用的missing()函數。我一直無法上班。
這是我寫的函數,也包含了可選的facets參數的所需功能。
$ qhist <- function(variable, df, heading, facets) {
qplot(variable, data = df, geom = "histogram", binwidth = 2000,
xlab = "Salary", ylab = "Noms") +
theme_bw() +
scale_x_continuous(limits=c(40000,250000),
breaks=c(50000,100000,150000,200000,250000),
labels=c("50k","100k","150k","200k","250k")) +
opts(title = heading, plot.title = theme_text(face = "bold",
size = 14), strip.text.x = theme_text(size = 10, face = 'bold'))
# If facets argument supplied add the following, else do not add this code
+ facet_wrap(~ facets)
「方面」是否合乎邏輯?或者是其他東西? (要面向的變量的字符向量?) –
不,這將是一個變量來面向。舉例來說,我有薪水數據直方圖,有時候我想按行業來分析。 –