簡體   English   中英

R以95%的置信區間繪制兩個系列的均值

[英]R plot two series of means with 95% confidence intervals

我正在嘗試繪制以下數據

factor <- as.factor(c(1,2,3))
V1_mean <- c(100,200,300)
V2_mean <- c(350,150,60)
V1_stderr <- c(5,9,3)
V2_stderr <- c(12,9,10)

plot <- data.frame(factor,V1_mean,V2_mean,V1_stderr,V2_stderr)

我想創建一個在x軸上具有因子,在y軸上具有值,以及V1和V2分別為線的圖(因此,點是一條線上的V1_mean值和另一條線上的V2_mean值)。 我還想基於V1_stderr和V2_stderr為這些方法添加誤差線

非常感謝

我不確定您想要的輸出,但這是一個可能的解決方案。

首先,我不會調用您的數據plot因為這是R中常用的存儲函數

其次重要的是,當你想在繪制兩行ggplot你通常使用的功能,例如有潮汐數據melt (從reshape2封裝)或gather (從tidyr包)。

這是一種可能的方法

library(ggplot2)
library(reshape2)

dat <- data.frame(factor, V1_mean, V2_mean, V1_stderr, V2_stderr)
mdat <- cbind(melt(dat[1:3], "factor"), melt(dat[c(1, 4:5)], "factor"))
names(mdat) <- make.names(names(mdat), unique = TRUE)

ggplot(mdat, aes(factor, value, color = variable)) +
  geom_point(aes(group = variable)) + # You can also add `geom_point(aes(group = variable)) + ` if you want to see the actual points
  geom_errorbar(aes(ymin = value - value.1, ymax = value + value.1))

在此處輸入圖片說明

暫無
暫無

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

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