1

ggplot()とを使用して積み上げ棒グラフをプロットしようとしていますgeom_bar()

サンプルデータ (Titanic Kaggle の質問):

PassengerId   Survived   Age
          1          0    25
          2          1    20
          3          1    40
          4          0    10

年齢範囲ごとに生存と死亡の積み上げ棒グラフを表示しようとしています (年齢をビンに分割しました)。コマンドを実行してもプロットが表示されません。print() 関数を追加すると、エラーが発生します

エラー: プロットにレイヤーがありません

ここで見逃しているものがあるかどうか教えてください。

breaks <- seq(min(train$Age), max(train$Age), 10)
p <- ggplot(train, aes(x=train$Age, y=length(train$PassengerId)), xlab = "age", ylab = "count", main = "survival", 
   fill = Survived + geom_bar(stat = "identity", bin = breaks))

print(p)

「train」はデータを格納したオブジェクトです。

4

2 に答える 2

0

パスカルのヒントとは別に、次のことが必要になる場合があります。

  • 色付きの列に係数を使用 (生存)
  • 提案されているように、異なる geom_bar() および aes() パラメータを使用してください

コード:

train <- data.frame(PassengerId = 1:4, Survived = factor(c(0,1,1,0)), Age = c(25, 20, 40, 10))
BIN.WIDTH <- 10
my.breaks <- seq(from = min(train$Age), to = max(train$Age) + BIN.WIDTH, by = BIN.WIDTH)
ggplot(train, aes(Age, fill = Survived)) + geom_bar(breaks = my.breaks)

プロット:

作成された積み上げチャート

于 2015-07-15T10:33:08.907 に答える