2017-11-02 5 views
-1

時系列プロット(折れ線グラフ)を作成する関数を記述しようとしています。プロットが作成されるように関数に引数を渡すにはどうすればよいですか?私はaes_stringなどを使用するような異なる方法を試しましたが、成功しませんでした。ggplot2を使って関数に引数を渡してラインプロットを得るには?

lineplotfun <- function(feature){ 
    ggplot(aes(x = 1:length(feature), y = feature), data = mtcars) + 
    geom_line() 
    } 

lineplotfun(mpg) 

文字列または名前としてmpgを渡します。

+0

あなたが '' lineplotfun(mtcars $ mpgファイル)を意味しましたか?それは正常に動作するので、エラーをコード化します。 –

+0

あなたは何を引数に渡そうとしていますか?変数名?データのベクトル?データフレーム? – MrGumble

答えて

0

問題のコードには多くの問題があります。 data = mtcars

1)yggplot2がロードされている場合mpgtibble

3)aes()

2ではない)y = feature

4無意味である)1:長さ(機能)のみfeatureがベクターの場合は意味があります

あなたが望むものを達成する方法の1つは、 data = NULLを設定し、関数にベクトルを渡します

lineplotfun <- function(feature){ 
    require(ggplot2) 
    ggplot2::ggplot(data = NULL, aes(x = seq_along(feature), y = feature)) + 
    ggplot2::geom_line() 
} 

lineplotfun(mtcars$mpg) 

結果は次のとおりです。

ggplot

関連する問題