簡體   English   中英

在ggplot中繪制置信區間

[英]Plotting confidence intervals in ggplot

我想用ggplot做下面的情節:

GgPlot的置信區間

這是我的df結構的一個例子(有點,不按比例繪制數據):

example.df = data.frame(mean = c(0.3,0.8,0.4,0.65,0.28,0.91,0.35,0.61,0.32,0.94,0.1,0.9,0.13,0.85,0.7,1.3), 
                            std.dev = c(0.01,0.03,0.023,0.031,0.01,0.012,0.015,0.021,0.21,0.13,0.023,0.051,0.07,0.012,0.025,0.058),
                            class = c("1","2","1","2","1","2","1","2","1","2","1","2","1","2","1","2"),
                            group = c("group1","group2","group1","group2","group1","group2","group1","group2","group1","group2","group1","group2","group1","group2","group1","group2"))

該數據框由16個重復組成,每個重復具有給定的平均值和給定的標准偏差。

對於每個復制,我想繪制置信區間,其中我的圖例中的大點是平均估計值,條形的長度是標准偏差的兩倍。

此外,我想在同一行中繪制兩個不同的重復,但具有不同的着色,按類着色,紅色為1級,藍色為2級。

最后,我想將整個繪圖分成兩個面板(在同一行中),對應於兩個不同的組。

我試着查看這個網站http://www.cookbook-r.com/Graphs/Plotting_means_and_error_bars_(ggplot2)/但是無法弄清楚如何為這個結構的任何數據框自動化這個,有X個組(在這種情況下2),K每組重復(在這種情況下,類別1中的8,4,類2和4)。

有沒有一種使用ggplot或標准r pkg庫的好方法?

我假設您提供的示例數據框架沒有以適當的方式構建,因為group1所有值都具有class 1 ,而group2所有值都是類2 所以我創建了新的數據框,還添加了一個名為replicate新列,它顯示了每個group的重復次數(四次重復(包含兩個class值))。

example.df = data.frame(mean = c(0.3,0.8,0.4,0.65,0.28,0.91,0.35,0.61,0.32,0.94,0.1,
                                0.9,0.13,0.85,0.7,1.3), 
                        std.dev = c(0.01,0.03,0.023,0.031,0.01,0.012,0.015,0.021,0.21,
                                  0.13,0.023,0.051,0.07,0.012,0.025,0.058),
                        class = c("1","2","1","2","1","2","1","2","1","2","1",
                                 "2","1","2","1","2"),
                        group = rep(c("group1","group2"),each=8),
                        replicate=rep(rep(1:4,each=2),time=2))

現在,您可以使用geom_pointrange()來獲取具有置信區間的點和facet_wrap()來為每個組創建繪圖。

ggplot(example.df,aes(factor(replicate),
               y=mean,ymin=mean-2*std.dev,ymax=mean+2*std.dev,color=factor(class)))+
  geom_pointrange()+facet_wrap(~group)

在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM