我試圖將列索引傳遞給ggplot,這是我將反復(fù)使用的函數(shù)的一部分。喜歡:myplot <- function(df){ ggplot(df, aes(df[, 1], df[, 2])) + geom_point()}我將始終將第一列用作我的x變量,將第二列用作我的y變量,但是列名在數(shù)據(jù)集之間變化。我到處搜索了。有什么想法嗎?編輯:這是我使用的答案:require(ggplot2)myplot <- function(df){ ggplot(df, aes_string(colnames(df)[1], colnames(df)[2])) + geom_point()}
3 回答

白衣染霜花
TA貢獻(xiàn)1796條經(jīng)驗 獲得超10個贊
我已經(jīng)鏈接了一種方法(根本不用列名)。如果您堅持使用列名,請嘗試以下操作:set.seed(45); df <- data.frame(x=gl(5,5), y=runif(25)); myplot2 = function(df, col1, col2) { ggplot(df, aes(x = get(names(df)[col1]), y = get(names(df)[col2])), environment = environment()) + geom_point() }。由此可以很容易地更改此函數(shù)以將列名作為參數(shù)。
- 3 回答
- 0 關(guān)注
- 762 瀏覽
添加回答
舉報
0/150
提交
取消