R 对数刻度y轴GG图

R 对数刻度y轴GG图,r,ggplot2,R,Ggplot2,我有两个数据帧: df1 <- data.frame(runif(100,0,0.02), 1:100) colnames(df1) <- c("a","b") df2 <- data.frame(runif(100,0,0.3), 1:100) colnames(df2) <- c("a","b") 但是我仍然没有得到我想要的添加限制=c(10^-4,1)和更改标签=逗号成功了 最终代码: ggplot(df1, aes(x=factor(b), y=a)) +

我有两个数据帧:

df1 <- data.frame(runif(100,0,0.02), 1:100)
colnames(df1) <- c("a","b")

df2 <- data.frame(runif(100,0,0.3), 1:100)
colnames(df2) <- c("a","b")
但是我仍然没有得到我想要的

添加
限制=c(10^-4,1)
和更改
标签=逗号
成功了

最终代码:

ggplot(df1, aes(x=factor(b), y=a)) +
  geom_point() +
  scale_y_continuous(trans = log10_trans(),
                     breaks = comma,
                     labels = trans_format("log10", math_format(10^.x)),
                     limits=c(10^-4,1)) +
  annotation_logticks()

此外,提示如何在
逗号
函数中仅显示有意义的数字(即1而不是1.0000,或0.1而不是0.1000)?谢谢

您尝试了什么代码?已解决。要读取尾随0,请使用
labels=function(x)格式(x,scientific=FALSE,drop0traily=T),而不是
labels=comma
ggplot(df1, aes(x=factor(b), y=a)) +
  geom_point() +
  scale_y_continuous(trans = log10_trans(),
                     breaks = comma,
                     labels = trans_format("log10", math_format(10^.x)),
                     limits=c(10^-4,1)) +
  annotation_logticks()