繁体   English   中英

半对数绘图轴标签和功能未出现在R中

[英]Semi log plot axis labelling and function doesn't appear in R

我正在尝试创建一个绘图,其对数轴为x,从10 ^ -8到10 ^ -3,仅标记所有其他刻度,y轴为0到100。
我无法标记其他所有刻度,并且该函数未出现在图形上
有人知道我哪里出问题了吗?

参量

c4=1e-6
c5=2
K3=1e-6
R1=0.02
R2=0.05
R3=0.2

功能

g <- function(x,c5,K3,R,c4)
{
z = (c5*K3*x)/(R*c4-c5*x)
return(z)
}

z1 <- g(x, c5, K3, R1, c4)
z2 <- g(x, c5,K3,R2,c4)
z3 <- g(x, c5,K3,R3,c4)

情节

plot(x, z1, log="x", lty=3, xaxt="n", yaxt="n", xlim=c(10^-8, 10^-3), ylim=c(0, 100),
 main="Fig 2B", 
 xlab="[Ca2+] in cytosol (M)",
 ylab="[InsP3] (nM))")
 axis(side=2, at= seq(0,100, by=10), labels= c(0, FALSE, 20, FALSE,  40, FALSE, 60, FALSE, 80, FALSE, 100), srt=90)
 xticks <- seq(-7, -3, by=2)
 xlabels <- sapply(xticks, function(i) as.expression(bquote(10^ .(i))))
 axis(side=1, at=c(10^-7, 10^-5, 10^-3), labels=xlabels)
 lines(x, z2, lty=2)
 lines(x, z3, lty=1)

这是解决此问题的两种解决方案:

1)将所有其他标签设置为NA(尝试时不要设置FALSE)

plot(1:10, axes = FALSE)
axis(1, at = 1:10, labels = c(NA, 2, NA, 4, NA, 6, NA, 8, NA, 10))

2)将轴添加两次。 一次不带标签仅获得刻度线,一次带所需标签

plot(1:10, axes = FALSE)
axis(1, at = 1:10, labels = FALSE)
axis(1, at = seq(2, 10, 2))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM