plot.fitEmax: Plot a Emax model and dose group means.

plot.fitEmaxR Documentation

Plot a Emax model and dose group means.

Description

Plot an Emax model stored in an object created by function fitEmax.

Usage

## S3 method for class 'fitEmax'
plot(
          x,int=0,plotResid=FALSE,clev=0.9,
          predict=TRUE,plotci=TRUE,plotDif=FALSE,
          xlab='Dose',
          ylab=ifelse(plotResid,'Residuals',ifelse(plotDif,
                'Difference With Placebo','Response')),
          ncol=NULL,
          symbol=NULL,symbolLabel='Group',symbolShape=8,
          symbolColor='red',symbolSize=4,
          bwidth=NULL,
          xlim=NULL,
          xat=NULL,
          ylim=NULL,
          logScale=FALSE,       
          ngrid=200,
          plot=TRUE, ...)

Arguments

x

Output of fitEmax with class "fitEmax".

int

The index for the protocol (intercept) to use for the predictions and computation of dose group means and standard errors. The default value is 0, which displays all protocols in a grid layout.

plotResid

If TRUE, a residual plot of the observed dose group means is produced instead of a dose response curve plot.

clev

Confidence level for intervals about the estimated mean for each dose.

predict

When predict=TRUE, predictive intervals for sample dose group means are plotted. They are gray-shaded bars. If there is >1 symbol group mean for a protocol/dose combination, then the smaller sample size is used when computing the prediction interval.

plotci

When plotCI=TRUE, confidence intervals for the population dose group means are plotted. They are black bars.

plotDif

Plot difference between doses and placebo. It is assumed the lowest dose in each protocol is placebo.

xlab

Label for the x-axis

ylab

Label for the y-axis

ncol

When more than one protocol is plotted, ncol specifies the number of side by side plots in the plot grid. The default is 3 or 5 depending on the plot type

symbol

An optional grouping variable. The values of symbol must correspond to the original data used in fitEmax.

symbolLabel

Label given to symbol in plot legend.

symbolShape

A character vector with named elements giving the shapes assigned to different levels of variable symbol. If a single shape is specified, it is replicated for all dose group means. See package ggplot2 for symbol mappings.

symbolColor

A character vector with named elements giving the colors assigned to different levels of variable symbol. If a single color is specified, it is replicated for all dose group means. See package ggplot2 for color mappings.

symbolSize

The size of the symbol for the dose group sample means. Set symbolSize=0 to supress plotting the means.

bwidth

Width of the cap on the predictive interval bars.

xlim

Plot limits for the x-axis

xat

The points at which tick-marks are to be drawn. Errors occur if the points are outside the range of xlim. By default (when NULL) tickmark locations are computed.

ylim

Plot limits for the y-axis

logScale

If TRUE, log scale is used for dose.

ngrid

The number doses evaluated when plotting the curve.

plot

Return plotting output without plotting.

...

No additional plotting options are currently used.

Details

Model estimates, standard errors, and confidence bounds are computed using function SeEmax.

The function generates random numbers when predict=TRUE, so the random number generator/seed must be set before the function is called for exact reproducibility.

Value

A list with ggplot object, and a matrix with the confidence and prediction interval limits.

Author(s)

Neal Thomas

See Also

nls

Examples

### example changes the random number seed

doselev<-c(0,5,25,50,100,350)
n<-c(78,81,81,81,77,80)

### population parameters for simulation
e0<-2.465375 
ed50<-67.481113 

dtarget<-100
diftarget<-9.032497
emax<-solveEmax(diftarget,dtarget,log(ed50),1,e0)

sdy<-8.0
pop.parm<-c(log(ed50),emax,e0)    
dose<-rep(doselev,n)
meanlev<-emaxfun(dose,pop.parm)  

y<-rnorm(sum(n),meanlev,sdy)

testout<-fitEmax(y,dose,modType=4)

plot(testout)

clinDR documentation built on Aug. 9, 2023, 9:08 a.m.