我在 3 个不同的时间点收集了 7 个不同的病毒浓度数据点。我如何用 R 中的误差条绘制图表?
I have 7 different data points for virus concentration collected at 3 different time points. How do I graph this with error bars in R?
我收集了七个不同的样品,其中含有不同浓度的昆金病毒。
- 3个样本来自24小时时间点:667、1330、1670
- 2个样本来自48小时时间点:323000、590000
- 2个样本来自72小时时间点:3430000、4670000
如何在 R 中创建反映此数据(包括误差条)的点图?我正在使用 ggplot2。
到目前为止我的代码是:
data1 <-data.frame(hours, titer)
ggplot(data1, aes(x=hours, y=titer, colour = hours)) + geom_point()
我建议您采用下一种方法。如果你想要误差条,你可以根据均值和标准差来计算它。在下一个代码中概述了执行此操作的方法。我使用了一个标准偏差,但您可以设置任何其他值。另外,由于您想查看不同的样本,我使用了 facet_wrap()
。这里的代码:
library(ggplot2)
library(dplyr)
#Data
df <- data.frame(sample=c(rep('24 hour',3),rep('48 hour',2),rep('72 hour',2)),
titer=c(667, 1330, 1670,323000, 590000,3430000, 4670000),
stringsAsFactors = F)
#Compute error bars
df <- df %>% group_by(sample) %>% mutate(Mean=mean(titer),SD=sd(titer))
#Plot
ggplot(df,aes(x=sample,y=titer,color=sample,group=sample))+
geom_errorbar(aes(ymin=Mean-SD,ymax=Mean+SD),color='black')+
geom_point()+
scale_y_continuous(labels = scales::comma)+
facet_wrap(.~sample,scales='free')
输出:
如果你有一个常用的y-axis秤,你可以试试这个:
#Plot 2
ggplot(df,aes(x=sample,y=titer,color=sample,group=sample))+
geom_errorbar(aes(ymin=Mean-SD,ymax=Mean+SD),color='black')+
geom_point()+
scale_y_continuous(labels = scales::comma)+
facet_wrap(.~sample,scales = 'free_x')
输出:
我收集了七个不同的样品,其中含有不同浓度的昆金病毒。
- 3个样本来自24小时时间点:667、1330、1670
- 2个样本来自48小时时间点:323000、590000
- 2个样本来自72小时时间点:3430000、4670000
如何在 R 中创建反映此数据(包括误差条)的点图?我正在使用 ggplot2。
到目前为止我的代码是:
data1 <-data.frame(hours, titer)
ggplot(data1, aes(x=hours, y=titer, colour = hours)) + geom_point()
我建议您采用下一种方法。如果你想要误差条,你可以根据均值和标准差来计算它。在下一个代码中概述了执行此操作的方法。我使用了一个标准偏差,但您可以设置任何其他值。另外,由于您想查看不同的样本,我使用了 facet_wrap()
。这里的代码:
library(ggplot2)
library(dplyr)
#Data
df <- data.frame(sample=c(rep('24 hour',3),rep('48 hour',2),rep('72 hour',2)),
titer=c(667, 1330, 1670,323000, 590000,3430000, 4670000),
stringsAsFactors = F)
#Compute error bars
df <- df %>% group_by(sample) %>% mutate(Mean=mean(titer),SD=sd(titer))
#Plot
ggplot(df,aes(x=sample,y=titer,color=sample,group=sample))+
geom_errorbar(aes(ymin=Mean-SD,ymax=Mean+SD),color='black')+
geom_point()+
scale_y_continuous(labels = scales::comma)+
facet_wrap(.~sample,scales='free')
输出:
如果你有一个常用的y-axis秤,你可以试试这个:
#Plot 2
ggplot(df,aes(x=sample,y=titer,color=sample,group=sample))+
geom_errorbar(aes(ymin=Mean-SD,ymax=Mean+SD),color='black')+
geom_point()+
scale_y_continuous(labels = scales::comma)+
facet_wrap(.~sample,scales = 'free_x')
输出: