Rのggplot2のスタックされたバープロットに水平線を追加し、凡例に表示します

CCID

以下の例のように、積み重ねられたバープロットがあります。

各バーに異なる値で、各バーに1セットまたは2セットの水平線(色と線種を指定)を追加し、これらを凡例に追加します。

Titanic.df <- as.data.frame(Titanic)

Titanic.ag <- aggregate( Freq ~ Sex + Class + Age, data=Titanic.df, sum, subset = Survived == "Yes")

bars <- rep(c(0.5, NA, 0.7, NA, 0.6, NA, 0.9, NA), 2)

ggplot(Titanic.ag, aes(x = Class, y = Freq, fill = Sex)) + 
  geom_bar(position = "fill", stat = "identity") + 
  facet_grid(~Age) +
  geom_errorbar(aes(y = bars, ymin = bars, ymax = bars,  col = "Ref1")) + 
  scale_fill_manual(values = c("darkgreen", "darkblue") ) + 
  labs(col = "Reference",
       fill= "",
       y = "Proportion",
       x = "Class")

水平線のある巨大な積み上げ棒グラフ

いくつかの質問で提案されているようにgeom_errorbar()を使用しようとしましたが、2つの問題が発生します。

エラーバーの値のベクトルを追加すると、ggplotはデータフレームと同じ長さ(たとえば、Titanic.agの16)を期待しますが、スタックされているのは8本のバーだけです。これが、bars上記でNAを使用した理由です。代替手段はありますか?

さらに重要なのは、色と線種を制御したいのですが、これらをgeom_bar()に追加すると、凡例が失われます。例えば

  geom_errorbar(aes(y = bars, ymin=bars, ymax=bars,  col = "Ref1"), col = "red", linetype = 2)

geom_segment()は代替手段ですか?

タイプミスを編集し、水平線のさまざまな値を明確にしました。

CCID

上記の答えは伝説を生み出しません。線種と色は変わりますが、元の質問でもこれを示しました。いくつか検索した後、凡例を追加する方法を見つけたので、ここに投稿しました。

library(ggplot2)

Titanic.df <- as.data.frame(Titanic)

Titanic.ag <- aggregate( Freq ~ Sex + Class + Age, data=Titanic.df, sum, subset = Survived == "Yes")

bars <- rep(c(0.5, NA, 0.7, NA, 0.6, NA, 0.9, NA), 2)

ggplot(Titanic.ag, aes(x = Class, y = Freq, fill = Sex)) + 
  geom_bar(position = "fill", stat = "identity") + 
  facet_grid(~Age) +
  geom_errorbar(aes(y = bars, ymin = bars, ymax = bars,  col = "Ref1"), linetype = 2, size = 1) + 
  scale_fill_manual(values = c("darkgreen", "darkblue") ) + 

  scale_colour_manual(name='', values=c("Ref1" = "darkred"), guide ="legend") +
  guides(col = guide_legend(override.aes = list(linetype=2), title = "Reference")) + 

  labs(fill= "",
       y = "Proportion",
       x = "Class")

これは、さらにgeom_errorbar()を追加するように適合させることができます。

私はまだ原因でNASとの仕事のラウンドに警告を取得するgeom_errorbar()ためのベクターyyminおよびymax、これはより多くの面で複雑になりますが、それは動作します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ggplot2:オーバーレイされたプロットの凡例記号を調整します

分類Dev

Rのスタックされたバープロットにgeom_segの行を追加します

分類Dev

rのスタックされたバープロットにgeom_lineを追加します

分類Dev

空のプロットからggplot2に凡例を追加します

分類Dev

(自動的に選択された)線の色の凡例として、プロットの横に(個別の)カラーバーを表示します

分類Dev

ggplot2を使用したRのスタックバープロット

分類Dev

R:ggplot2のPCAバイプロットにキャリブレーションされた軸を追加します

分類Dev

ggplot2を使用して、スタックされたバープロットのデータフレームの順序を管理します

分類Dev

タイトルがfacet_wrapプロットに表示されるので、ggplot2プロットにタイトルを追加します

分類Dev

Rのバープロットラベル:プロット領域の下に水平線を追加します

分類Dev

グラフの下に凡例をプロットし、ggplot2の凡例の上に凡例のタイトルをプロットします

分類Dev

ggplot2は既存のプロットに手動バーを追加します

分類Dev

Rのggplot2を使用して、ビン化されたクラスの連続ラスターデータをプロットします

分類Dev

結合されたggplot2プロットに凡例を表示する-積み上げ棒グラフと線

分類Dev

ggplot2-スタックされたバープロットの `geom_rect`の色を変更します

分類Dev

ggplot2を使用して、スタックされたバープロットで上位3つのエントリのみを表示し、残りを「その他」として表示します

分類Dev

Rのプロットでhoverinfoテキストに水平線を追加します

分類Dev

ggplot2を使用して、ファセットをかわしたバープロットの上にテキストを追加します

分類Dev

ggplot2:グループ化されたバープロットに線とp値を追加する方法は?

分類Dev

ラスタープロットの凡例ラベルを制御して、指定されたブレーク値をrに表示する

分類Dev

R:ggplot2のグループ化されたヒストグラムに通常の近似を追加します

分類Dev

facet_gridなしのグループ化されたスタックバープロットggplot2

分類Dev

ggplot2は、ファセットプロットの2つのY軸にそれぞれ個別の凡例を追加します

分類Dev

ggplot2を使用して、指定されたx値でデータフレームの行ごとに線をプロットする

分類Dev

Gghighlightはggplot2プロットに灰色の線を表示しませんか?

分類Dev

ggplot2を使用して、データをサブセット化し、折れ線グラフに2つの変数をプロットします。

分類Dev

R ggplot2:スタックバープロットの値を強調表示

分類Dev

プロットの線を参照せずに、プロットの凡例にテキストを追加します

分類Dev

RでプロットをPDFにエクスポート:凡例を2ページ目に追加しますが、最初のページには追加しません

Related 関連記事

  1. 1

    ggplot2:オーバーレイされたプロットの凡例記号を調整します

  2. 2

    Rのスタックされたバープロットにgeom_segの行を追加します

  3. 3

    rのスタックされたバープロットにgeom_lineを追加します

  4. 4

    空のプロットからggplot2に凡例を追加します

  5. 5

    (自動的に選択された)線の色の凡例として、プロットの横に(個別の)カラーバーを表示します

  6. 6

    ggplot2を使用したRのスタックバープロット

  7. 7

    R:ggplot2のPCAバイプロットにキャリブレーションされた軸を追加します

  8. 8

    ggplot2を使用して、スタックされたバープロットのデータフレームの順序を管理します

  9. 9

    タイトルがfacet_wrapプロットに表示されるので、ggplot2プロットにタイトルを追加します

  10. 10

    Rのバープロットラベル:プロット領域の下に水平線を追加します

  11. 11

    グラフの下に凡例をプロットし、ggplot2の凡例の上に凡例のタイトルをプロットします

  12. 12

    ggplot2は既存のプロットに手動バーを追加します

  13. 13

    Rのggplot2を使用して、ビン化されたクラスの連続ラスターデータをプロットします

  14. 14

    結合されたggplot2プロットに凡例を表示する-積み上げ棒グラフと線

  15. 15

    ggplot2-スタックされたバープロットの `geom_rect`の色を変更します

  16. 16

    ggplot2を使用して、スタックされたバープロットで上位3つのエントリのみを表示し、残りを「その他」として表示します

  17. 17

    Rのプロットでhoverinfoテキストに水平線を追加します

  18. 18

    ggplot2を使用して、ファセットをかわしたバープロットの上にテキストを追加します

  19. 19

    ggplot2:グループ化されたバープロットに線とp値を追加する方法は?

  20. 20

    ラスタープロットの凡例ラベルを制御して、指定されたブレーク値をrに表示する

  21. 21

    R:ggplot2のグループ化されたヒストグラムに通常の近似を追加します

  22. 22

    facet_gridなしのグループ化されたスタックバープロットggplot2

  23. 23

    ggplot2は、ファセットプロットの2つのY軸にそれぞれ個別の凡例を追加します

  24. 24

    ggplot2を使用して、指定されたx値でデータフレームの行ごとに線をプロットする

  25. 25

    Gghighlightはggplot2プロットに灰色の線を表示しませんか?

  26. 26

    ggplot2を使用して、データをサブセット化し、折れ線グラフに2つの変数をプロットします。

  27. 27

    R ggplot2:スタックバープロットの値を強調表示

  28. 28

    プロットの線を参照せずに、プロットの凡例にテキストを追加します

  29. 29

    RでプロットをPDFにエクスポート:凡例を2ページ目に追加しますが、最初のページには追加しません

ホットタグ

アーカイブ