pra*_*asp 11 string arguments r ggplot2 dataframe
我想编写一个采用数据帧的函数,并将该数据帧中的所有列绘制为直方图.
对于我之前知道的列名的数据帧,我可以写
qplot(colname1, data=df, geom='histogram')
qplot(colname2, data=df, geom='histogram')
...
Run Code Online (Sandbox Code Playgroud)
但我想这样做,所以我可以使用列的名称作为字符串"colname1"
.
换句话说,怎么写
plot_histogram_of_column <- function(df, colname) {
# qplot(colname, data=df, geom='histogram') won't work
}
Run Code Online (Sandbox Code Playgroud)
jor*_*ran 19
使用ggplot
和aes_string
.像这样的东西:
ggplot(data = df, aes_string(x = colname)) + geom_histogram()
Run Code Online (Sandbox Code Playgroud)
aes_string
是为了这个目的而写的.