質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.40%
ggplot2

ggplot2は、統計解析向けのプログラミング言語及びその開発実行環境であるR言語のグラフィック作成用のライブラリです。

Q&A

1回答

203閲覧

折れ線グラフにエラーバーを

ryo_nakamura

総合スコア0

ggplot2

ggplot2は、統計解析向けのプログラミング言語及びその開発実行環境であるR言語のグラフィック作成用のライブラリです。

0グッド

0クリップ

投稿2023/09/29 07:30

編集2023/09/30 02:11

実現したいこと

R言語で折れ線グラフのエラーバーを追加したい

前提

R言語で平均体重の推移を表した折れ線グラフを作成しています。
残すはエラーバーの表示のみとなったのですが苦戦しています。

発生している問題・エラーメッセージ

折れ線グラフにエラーバーを付け足したいです。
geom_errorbarを試そうとしたのですがこの場合どう追加すればいいのかわからなくなってしまいました。

該当のソースコード

R言語

a<-ggplot()+geom_line(data=data,aes(x=DPH,y=Control,color="Control"),size=0.5,)+geom_point(data=data,aes(x=DPH,y=Control,color="Control"),size=2.5,)+geom_line(data=data , aes(x=DPH, y=GS500_8wks, color="GS500_8wks"),size=0.5)+geom_point(data=data , aes(x=DPH, y=GS500_8wks, color="GS500_8wks"),size=2.5)+geom_line(data=data , aes(x=DPH, y=GS500_16wks,color="GS500_16wks"),size=0.5)+geom_point(data=data , aes(x=DPH, y=GS500_16wks,color="GS500_16wks"),size=2.5)+geom_line(data=data,aes(x=DPH,y=GS1000_8wks,color="GS1000_8wks"),size=0.5)+geom_point(data=data,aes(x=DPH,y=GS1000_8wks,color="GS1000_8wks"),size=2.5)+geom_line(data=data,aes(x=DPH,y=GS1000_16wks,color="GS1000_16wks"),size=0.5)+geom_point(data=data,aes(x=DPH,y=GS1000_16wks,color="GS1000_16wks"),size=2.5)+theme_classic()+theme(text = element_text(size = 18))+ labs(title="Body weight")+ labs(y="Body weight(g)")+labs(x="DPH")+ labs(colour="")+theme(plot.title = element_text(hjust = 0.5))+scale_x_continuous(breaks = seq(56,168,28), labels = seq(56,168,28)) geom_errorbarを試そうとしたのですがこの場合どう追加すればいいのかわからなくなってしまいました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

scale_x_continuous(breaks = seq(56,168,28) や、geom_line() のパラメータを見ると、data(データフレーム)の中身は以下の様な構成になっているものと思われます。(各列の値は正規乱数で生成しました)

r

1library(tidyverse) 2 3# data for testing 4data <- data.frame( 5 DPH = seq(56,168,28), 6 Control = c(15.67, 18.98, 74.81, 64.87, 90.87), 7 GS500_8wks = c(10.05, 19.80, 30.99, 94.23, 89.83), 8 GS500_16wks = c(11.58, 25.77, 63.17, 80.78, 87.81), 9 GS1000_8wks = c(11.96, 29.53, 53.42, 87.92, 86.50), 10 GS1000_16wks = c(11.88, 38.9, 51.01, 73.67, 88.47) 11) 12 13# calculate the mean and standard deviation for each row 14data <- data %>% rowwise() %>% 15 mutate(mean = mean(c_across(-DPH)), sd = sd(c_across(-DPH))) 16 17# plot data 18a <- ggplot() + 19 geom_line(data=data,aes(x=DPH,y=Control,color="Control"),linewidth=0.5) + 20 geom_point(data=data,aes(x=DPH,y=Control,color="Control"),size=2.5) + 21 geom_line(data=data , aes(x=DPH, y=GS500_8wks, color="GS500_8wks"),linewidth=0.5) + 22 geom_point(data=data , aes(x=DPH, y=GS500_8wks, color="GS500_8wks"),size=2.5) + 23 geom_line(data=data , aes(x=DPH, y=GS500_16wks,color="GS500_16wks"),linewidth=0.5) + 24 geom_point(data=data , aes(x=DPH, y=GS500_16wks,color="GS500_16wks"),size=2.5) + 25 geom_line(data=data,aes(x=DPH,y=GS1000_8wks,color="GS1000_8wks"),linewidth=0.5) + 26 geom_point(data=data,aes(x=DPH,y=GS1000_8wks,color="GS1000_8wks"),size=2.5) + 27 geom_line(data=data,aes(x=DPH,y=GS1000_16wks,color="GS1000_16wks"),linewidth=0.5) + 28 geom_point(data=data,aes(x=DPH,y=GS1000_16wks,color="GS1000_16wks"),size=2.5) + 29 ## error bar 30 geom_errorbar(data=data, aes(x=DPH, ymax=mean+sd, ymin=mean-sd), width=2) + 31 ## 32 theme_classic() + theme(text = element_text(size = 18)) + 33 labs(title="Body weight") + labs(y="Body weight(g)") + labs(x="DPH") + labs(colour="") + 34 theme(plot.title = element_text(hjust = 0.5)) + 35 scale_x_continuous(breaks = seq(56,168,28), labels = seq(56,168,28)) 36 37plot(a)

イメージ説明

投稿2024/06/04 08:09

melian

総合スコア20255

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.40%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問