R 在ggplot的对数轴上绘制负数

R 在ggplot的对数轴上绘制负数,r,ggplot2,geom,R,Ggplot2,Geom,我遵循了这个示例,它非常适合我的数据()。除此之外,我还试图添加标准偏差,对于其中一个变量,标准偏差大于平均值。该图仅绘制了顶部错误条,而没有绘制底部错误条。如何为示例5添加错误栏 Sample <- c(1, 2, 3, 4, 5) Fe <- c(418, 592, 228, 351, 23880) sd <- c(269, 538, 187, 236, 36577) df <- data.frame(Sample, Fe, sd) df (plot

我遵循了这个示例,它非常适合我的数据()。除此之外,我还试图添加标准偏差,对于其中一个变量,标准偏差大于平均值。该图仅绘制了顶部错误条,而没有绘制底部错误条。如何为示例5添加错误栏

 Sample <- c(1, 2, 3, 4, 5)
 Fe <- c(418, 592, 228, 351, 23880)
 sd <- c(269, 538, 187, 236, 36577)

 df <- data.frame(Sample, Fe, sd)
 df

 (plot <- ggplot(df, aes(x = Sample, y = Fe, ymin = Fe - sd, ymax = Fe + sd)) + theme_bw() +
  geom_point(size=3, stat = "identity") + 
 geom_errorbar(aes(width = 0.1), stat = "identity") +
 scale_y_continuous(trans = log10_trans(),
                   breaks = trans_breaks("log10", function(x) 10^x),
                   labels = trans_format("log10", math_format(10^.x))) +
  annotation_logticks(sides = "l"))
Sample您可以
pmax(0,)
it:

库(ggplot2)
图书馆(比例尺)
ggplot(df,aes(x=样本,y=Fe,ymin=pmax(0,Fe-sd),ymax=Fe+sd))+
主题_bw()+
几何点(大小=3,stat=“identity”)+
几何误差条(aes(宽度=0.1),stat=“identity”)+
连续缩放(trans=log10\u trans(),
中断=传输中断(“log10”,函数(x)10^x),
标签=转换格式(“log10”,数学格式(10^.x)))+
注释(侧面=“l”)

或者,您可以使用较小的数字并查看错误栏的下端,尽管这可能表明当前值不是

ggplot(df,aes(x=Sample,y=Fe,ymin=pmax(1,Fe-sd),ymax=Fe+sd))+
主题_bw()+
几何点(大小=3,stat=“identity”)+
几何误差条(aes(宽度=0.1),stat=“identity”)+
连续缩放(trans=log10\u trans(),
中断=传输中断(“log10”,函数(x)10^x),
标签=转换格式(“log10”,数学格式(10^.x)))+
注释(侧面=“l”)

当y轴尝试调整时,使用更小的值将继续将其他误差挤压得更紧