plot(growth) fit=nls(y~a-b*(g^x),start = c(a=2,b=1,g=.8), control = nls.control( maxiter = 100),trace=T,na.action=na.omit,data=growth) summary(fit) ffit = function(doses =c(0,100), ed50=75.76,e0=1.885,emax=15.85,lambda=0.75,pl=T,...) { dose = seq(doses[1],doses[2],length=100) yy=e0 +(emax * dose^lambda)/(dose^lambda+ed50^lambda) if (pl) plot(dose,yy,type="l",...) else lines(dose,yy,...) } ffit(doses=c(0,75),ed50=5,e0=1,emax=10,lambda=1,lty=1,pl=T,ylim=c(0,10),main="",ylab="Response",xlab="Dose (mg)",col=1,lwd=2) ffit(doses=c(0,75),ed50=5,e0=1,emax=10,lambda=.75,lty=2,pl=F,ylim=c(0,10),main="",ylab="",xlab="Dose (mg)",col=2,lwd=2) ffit(doses=c(0,75),ed50=5,e0=1,emax=10,lambda=.5,lty=3,pl=F,ylim=c(0,10),main="",ylab="",xlab="Dose (mg)",col=3,lwd=2) function(doses, ed50,e0,emax,lambda,pl) { }