R中的线性函数轴标度
我有以下功能R中的线性函数轴标度,r,axis,scaling,R,Axis,Scaling,我有以下功能 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, "Functio
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()
C=15
S=序号(0,12,1)
pA=1
pS=0.5
更新
看起来“缩小”是指网格线,而不是轴或任何东西。我将把前面的答案保留在下面,但我认为这应该解决它
#还没有变化
绘图(S,A(S),type=“l”,col=“red”,ylim=c(0,15),xlim=c(0,15),xlab=“S”,ylab=“A”)
文本(8,11.5,“函数”,col=“红色”,cex=.9)
文本(11,10.2,表达式(A==frac(C,p[S])-frac(p[A],p[S])%。%S),cex=.9,col=“red”)
#不需要调用网格,因为我们希望更精确地控制它
abline(h=seq(0,15),col=“lightgray”,lty=“dottered”,lwd=par(“lwd”))
A线(v=seq(0,15,by=5),col=“lightgray”,lty=“dottered”,lwd=par(“lwd”))
您可以只执行abline(h=seq(…)
,而不设置col=
、lty=
或lwd=
,但要意识到abline
的默认值不同于grid
的默认值。我使用这些值来模拟网格的外观
旧答案
我认为您的意思是更改y轴标签,而不是y轴限制(这是ylim=
能够产生的全部效果)
使用base R图形:
plot(S,A(S),type=“l”,col=“red”,ylim=c(0,15),xlim=c(0,15),xlab=“S”,ylab=“A”,
yaxt=“n”)#这是新的
文本(8,11.5,“函数”,col=“红色”,cex=.9)
文本(11,10.2,表达式(A==frac(C,p[S])-frac(p[A],p[S])%。%S),cex=.9,col=“red”)
网格()
轴(2,at=1:15,las=2)
说明:
plot(…,yaxt=“n”)
表示不打印y轴记号和标签,请参阅
轴(…)
将轴添加到一侧。它本身只会添加一个默认轴
at=
设置记号和标签的放置位置
labels=
设置在每个刻度处放置的内容。如果不存在(如上所述),它只打印at
值
las=2
旋转数字,使其垂直于轴线。我这样做是为了显示更多的数字,否则它们会掩盖更多
虽然这显示了每一个,这是受画布大小的影响;如果您在全屏上进行相同的绘图,它将显示每个数字。非常感谢您的回答,这非常有帮助!我可能没有很清楚地表达自己。我还有一个问题,就是当我显示网格()时的大正方形。在网格线对应于x和y值的意义上,是否可以使它们“更小”?我希望你明白我的意思。你读过吗?它有nx=
和ny=
参数来更改行的定义方式。如果您想更具体地了解线条的确切位置(而不是数量),请查看网格的源代码,注意它使用了,这使得全高/全宽垂直/水平线条非常容易。我想我现在明白了。你说的ylim=
与grid()
无关。请看我的编辑,我想这可能是你想要的。这正是我的意思。现在它是完美的。非常感谢你的帮助。我对R还是新手,我正在尽可能多地学习。如果我的问题不够清楚,我很抱歉。