2016-01-06 19 views
5

ggplot2グラフのtheme_hc()テーマ(パッケージggthemesから)をscale_colour_pander()またはscale_fill_pander()と組み合わせて使用​​することがよくあります。これら3つの関数を1つにまとめたmyThemeというカスタム関数を作成したいと考えています。テーマと色を組み合わせたカスタムggplot2関数を作成する

私は、次の

myTheme <- function(){ 
    theme_hc() + scale_colour_pander() + scale_fill_pander() 
} 
data <- data.frame(x=1:2,y=3:4) 
ggplot(data, aes(x=x, y=y)) + geom_point() + myTheme() 

を試みたが、どうやらRは、関数内で最初にこれを評価し、エラーを与える:「エラー:(scale_colour_panderを追加する方法がわからない)テーマオブジェクトに」。

は、その後、私は

返し
myTheme <- function(){ 
    ggplot() + theme_hc() + scale_colour_pander() + scale_fill_pander() 
} 
data <- data.frame(x=1:2,y=3:4) 
ggplot(data, aes(x=x, y=y)) + geom_point() + myTheme() 

試してみました:

:「エラーがプロットにoを追加する方法を知ってはいけない」所望の効果を達成するための方法はありますがまたは私が結合しておく必要があります個々のコマンド?

+5

試し 'リスト(theme_hc()、scale_colour_pander()、scale_fill_pander())' – baptiste

+0

これは動作します!答えとして追加できますか? – takje

+1

takje、私はやや新しい(コメント)ですが、あなたがメッセージを受け取るために@baptisteを含める必要があるというあなたのリクエストを考えています(つまり、偶然返信する必要はありません)。 – steveb

答えて

5

標準技術は、リスト内の要素をラップすることです、

p + list(theme_hc() , scale_colour_pander() , scale_fill_pander()) 
関連する問題