我有以下功能
C=15
S=seq(0,12,.1)
pA=1
pS=0.5
A <- function(S) (C/pA)-(pA/pS)*S
plot (S, A(S), type="l", col="red", ylim=c(0,15), xlim=c(0,15), xlab="S", ylab="A")
text(8, 11.5, "Function", col = "red", cex=.9)
text(11, 10.2, expression(A==frac(C,p[S])-frac(p[A],p[S])%.%S), cex=.9, col = "red")
grid()
如何缩放轴,以便可以“缩小”一点。我正在寻找类似于ylim的函数,但我可以说:ylim = c(0,15,by = 1)。
看来您的“缩小”是为网格线而不是轴或其他任何东西。我将下面的答案保留在下面,但是我认为这应该可以解决。
# no change yet
plot (S, A(S), type="l", col="red", ylim=c(0,15), xlim=c(0,15), xlab="S", ylab="A")
text(8, 11.5, "Function", col = "red", cex=.9)
text(11, 10.2, expression(A==frac(C,p[S])-frac(p[A],p[S])%.%S), cex=.9, col = "red")
# no call to grid, since we want to control it a little more precisely
abline(h = seq(0, 15), col = "lightgray", lty = "dotted", lwd = par("lwd"))
abline(v = seq(0, 15, by = 5), col = "lightgray", lty = "dotted", lwd = par("lwd"))
您可以只 abline(h=seq(...))
设置而不设置col=
,lty=
或lwd=
,但是要意识到abline
的默认值不同于grid
的默认值。我使用这些值来模仿grid
的外观。
我认为您的意思是更改y轴标签,而不是y轴限制(这ylim=
可能会影响所有作用)。
使用基本R图形:
plot (S, A(S), type="l", col="red", ylim=c(0,15), xlim=c(0,15), xlab="S", ylab="A",
yaxt = "n") # this is new
text(8, 11.5, "Function", col = "red", cex=.9)
text(11, 10.2, expression(A==frac(C,p[S])-frac(p[A],p[S])%.%S), cex=.9, col = "red")
grid()
axis(2, at = 1:15, las = 2)
说明:
plot(..., yaxt = "n")
表示不绘制y轴刻度和标签,请参见?par
。axis(...)
将轴添加到侧面。就其本身而言,它将仅添加一个默认轴。at=
套,其中蜱和标签被放置。labels=
套什么把在每个刻度。如果不存在(如上面的内容),则仅打印该at
值。las=2
旋转数字,使其垂直于轴线。我这样做是为了显示更多数字,否则它们将掩盖更多。尽管这显示了其他所有内容,但这受画布大小的影响;如果在全屏模式下进行相同的绘图,它将显示每个数字。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句