2016-08-23 1 views
2

ggplotの新機能です。私はggplotの使い方を理解しようとしています。私はWickhamの本を読んでいて、まだaes()の機能を使う方法について私の頭を包み込んでいます。ggplotで複数のレイヤーを使用する審美性を使用する

aes()のこれらの2つの実装の違いは何です:

library(ggplot2) 

ggplot(mpg, aes(displ, hwy, colour = class)) + 
    geom_point() + 
    geom_smooth(method = "lm", se = FALSE) + 
    theme(legend.position = "none") 

ggplot(mpg, aes(displ, hwy)) + 
    geom_point(aes(colour = class)) + 
    geom_smooth(method = "lm", se = FALSE) + 
    theme(legend.position = "none") 

それらの両方が大幅に異なるグラフを印刷します。どんな助け?私は本当に立ち往生している。

+2

にaesethicsをマッピングしているあなたはggplot' 'の' aes'内美学をマップするが、それは* *グローバルです。これは、 'inhert.aes'引数を使用しない限り、プロット内の他のすべての描画レイヤーによってマッピングが使用されていることを意味します。 'geom_point'のような描画レイヤー内に配置すると、そのレイヤーにのみ影響します。 – aosmith

+0

SOを尋ねる前に、関連するヘルプテキスト、つまり '?aes'を読むことから始めるべきです:' 'gesplot()に与えられた_Aestheticsはすべてのレイヤーのデフォルトとして使われます。層_" – Henrik

答えて

3

最初はです。審美的な世界をマッピングしますggplotは、これらの美学を他のすべてのgeom_xyz()レイヤーにマップしようとします。

後者の場合には、あなたが(あなたのケースgeom_point()で)特定のggplot

関連する問題