gpt4 book ai didi

r - 使scale_y_log10的刻度线位于0.01,0.1,1

转载 作者:行者123 更新时间:2023-12-03 01:11:59 24 4
gpt4 key购买 nike

我编写了以下代码来绘制该图

pd<- position_dodge(.2)  # # move them .05 to the left and right
pm25 <- ggplot(data, aes(x=CombSEG, y=conc,shape=A,color=A, lty=A, group=A)) +
geom_point() +
geom_line() +
geom_errorbar(aes(ymin=conc-se, ymax=conc+se),
width=.1, position=pd) +
theme_bw()+
limits(c(0
scale_y_log10(breaks=c(0.01,0.1,1),labels=c(0.01,0.1,1))

自动刻度分隔符为 10^-1.8、10^-1.6、10^-1.4 ... 10^-0.4。我实际上希望最低刻度为 0.01,最高刻度为 1。

感谢您的帮助。

编辑:这是我尝试你的代码后的情节。 enter image description here

最佳答案

使用 scale_y_log10breakslabels 参数(了解它们 here )。

# make up some sample data
df <- data.frame(x=1:100,y=10^-(2*runif(100)))
ggplot(df,aes(x=x,y=y)) + geom_point() + scale_y_log10()

看起来像: enter image description here

然后,要修改 log10 刻度以在 .01、.1 和 1 处自定义中断,请使用 breaks 参数:

ggplot(df,aes(x=x,y=y)) + geom_point() + scale_y_log10(breaks=c(.01,.1,1))

看起来像: enter image description here

最后,如果您希望标签也为 0.1、.1 和 1,请使用 labels 参数:

ggplot(df,aes(x=x,y=y)) + geom_point() + 
scale_y_log10(breaks=c(.01,.1,1),labels=c(.01,.1,1))

enter image description here

关于r - 使scale_y_log10的刻度线位于0.01,0.1,1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9222945/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com