2012-03-13 12 views
1

geom_areaの動作を模倣するためにgeom_ribbonを使用しようとしましたが、 が成功しません。あなたは次のことがうまくいかない理由を知っていますか? 私はハドレーの声明をggplot2 geom_area web pages: から使用しました。 "領域プロットはgeom_ribbonの特別なケースです。範囲の最小値は0に固定され、位置調整のデフォルトはposition_stackedです。"スタッキングgeom_ribbon

test <- expand.grid(Param = LETTERS[1:3], x = 1:5) 
test$y <- test$x 

# Ok 
p <- ggplot(test) 
p <- p + geom_area(aes(x = x, y = y, group = Param, fill = Param), alpha = 0.3) 
p 

# not ok - initial idea 
p <- ggplot(test) 
p <- p + geom_ribbon(aes(x = x, ymin = 0, ymax = y, group = Param, fill = Param), alpha = 0.3, position = position_stack()) 
p 

さらに、どのようにしてgeom_XXXのコード化された関数のコードを見ることができますか? 私の伝統的な方法は非常に便利ではありませんこれは、以下を与える:あなたの助けのための

> geom_ribbon 
function (mapping = NULL, data = NULL, stat = "identity", position = "identity", 
    na.rm = FALSE, ...) 
GeomRibbon$new(mapping = mapping, data = data, stat = stat, position = position, 
    na.rm = na.rm, ...) 

感謝を よろしく パスカル

答えて

2

あなたは自分のgeom_ribbon呼び出しでyに変数をマップしませんでした。 y = yを追加すると、それは私のために働く。一般的に、geom_ribbonは審美的なものを必要としませんが、スタッキングの場合にはそうすると思います。また、ggplot2のすべてのソースコードがgithubである私はある理由のために出て、よく考えた推論があると推測していますが、知っていることはありません...

関連する問題