NONMEM Users Network Archive

Hosted by Cognigen

[NMusers] RE: Changing axis label in ranram.vs.cov in XPOSE4

From: Paul Hutson <>
Date: Fri, 22 Feb 2019 16:37:34 +0000

Thanks to Laura, Sam and Siv for their suggestions, which I summarize below=
Sam's approach at the bottom is nice in that it shows how to access the lab=
el names of the S4 object, yet is more complex in that the loop is sensitiv=
e to the entry of the correct number of covariates.

Siv's approach is perhaps the most elegant to me, in that it allows the lab=
els to be changed before the ranpar.vs.cov script is run, and will also be =
ready for other functions that will use the ETA/IIV data.

Laura's approach is actually my favorite for the ranpar.vs.cov command, in =
that in making the stepwise label change and output to the multiple plots (=
with the %02d creating numbered files), her method separates the plots of d=
iffering ETAs/IIVs. That is, the plots for IIV_Vc do not start on the same=
 page as the end of the plots of IIV_CL.

## Standard argument
xpdb1 <-
ranpar.vs.cov(xpdb1, onlyfirst = FALSE, cex=0.5,x.cex=1.5,y.cex=1.5=
, page.numbers=F,
 main=NULL, scales = list(x=list(cex=1.5), y=list(cex=1.5)))

## From Laura Curd
xpdb1 <-
    change.xvardef(xpdb1, "ranpar")= "ETA1"
    xplot <- ranpar.vs.cov(xpdb1, onlyfirst=TRUE, ylb= "IIV_CL")
# Then you can make the ETA2 plots:
    change.xvardef(xpdb1, "ranpar")= "ETA2"
    xplot <- ranpar.vs.cov(xpdb1, onlyfirst=TRUE, ylb= "IIV_Vc")

## From Siv Jonsson
xpdb <-
#Provided ETA1 is the name of your variable in xpdb.
xpdb_at_Prefs_at_Labels$ETA1 <- "IIV_CL"
xpdb_at_Prefs_at_Labels$ETA2 <- "IIV_Vc"
ranpar.vs.cov(xpdb, onlyfirst = FALSE, cex=0.5,x.cex=1.5,y.cex=1.5,=
 main=NULL, scales = list(x=list(cex=1.5), y=list(cex=1.5)))

### From Sam Callisto
fig <- ranpar.vs.cov(xpdb1, cex=0.5,x.cex=1.5,y.cex=1.5, page.numbers=
=F, main=NULL, scales = list(x=list(cex=1.5), y=list(cex=1.5=

## Create custom list of labels, repeating each for the number of covariate=
s included
label <- c(rep("IIV_CL",3), rep("IIV_Vc", 3))

## loop through the plots in your saved plot object
for(i in 1:length(fig_at_plotList)){
  ## assign the ith y-label to the ith plot
  fig_at_plotList[[i]]$ylab[[1]] <- label[i]
## print figure to screen

Paul Hutson, PharmD, BCOP
UWisc School of Pharmacy
T: 608.263.2496
F: 608.265.5421

From: Laura Curd <>
Sent: Saturday, February 16, 2019 10:32 AM
To: Paul Hutson <>; 'nmusers' <>
Subject: RE: Changing axis label in ranram.vs.cov in XPOSE4

Hi Paul,

I have run into the same issue, so I typically call ranpar.vs.cov within a =
for loop (using vectors for the ETA names in patab and for the preferred na=
mes) to specify the axis label. You can specify each ETA individually by u=
sing change.xvardef, and make the y-axis label anything you want.

For example, to make the ETA1 plots only:

    change.xvardef(xpdb1, "ranpar")= "ETA1"
    xplot <- ranpar.vs.cov(xpdb1, onlyfirst=TRUE, ylb= "IIV_CL")

Then you can make the ETA2 plots:

    change.xvardef(xpdb1, "ranpar")= "ETA2"
    xplot <- ranpar.vs.cov(xpdb1, onlyfirst=TRUE, ylb= "IIV_Vc")

and so on for the other ETAs. Let me know if that helps!


Laura Curd, B.S.
Senior Programmer, Clinical Pharmacology Associate
Nuventra Pharma Sciences, Inc.<>

CONFIDENTIALITY NOTICE The information in this transmittal (including attac=
hments, if any) may be privileged and confidential and is intended only for=
 the recipient(s) listed above. Any review, use, disclosure, distribution o=
r copying of this transmittal, in any form, is prohibited except by or on b=
ehalf of the intended recipient(s). If you have received this transmittal i=
n error, please notify me immediately by reply email and destroy all copies=
 of the transmittal.

From:<> <ow=<>> On Behalf =
Of Paul Hutson
Sent: Friday, February 15, 2019 6:34 PM
To: 'nmusers' <<>>
Subject: [NMusers] Changing axis label in ranram.vs.cov in XPOSE4

WARNING: This email originated from outside of the company. Do not click li=
nks or open attachments unless you recognize the sender and are expecting t=
he message.
Is there an easy way to change the axis labels in the ranpar.vs.cov routine=
 (eg., from ETA1 to IIV_CL)
I've tried excluding PK parameters and leaving only ETAS in PATAB, and rena=
ming the ETA column headers to my desired name (eg.,IIV_CL in PATAB), but t=
hat doesn't work.
I have also have tried
                ranpar.vs.cov(xpdb1, cex=0.5,x.cex=1.5,y.cex=1.5, pag=
e.numbers=F, ylb=c("IIV_CL", "IIV_Vc", "IIV_Q", "IIV_Vp"),
                      main=NULL, scales = list(x=list(cex=1.5), y=
The ylb command plants all four labels on every plot.

Paul Hutson, PharmD, BCOP
UWisc School of Pharmacy
T: 608.263.2496
F: 608.265.5421

Received on Fri Feb 22 2019 - 11:37:34 EST

The NONMEM Users Network is maintained by ICON plc. Requests to subscribe to the network should be sent to: Once subscribed, you may contribute to the discussion by emailing: