aboutsummaryrefslogtreecommitdiff
path: root/R
diff options
context:
space:
mode:
authorJohannes Ranke <jranke@uni-bremen.de>2022-12-06 10:33:24 +0100
committerJohannes Ranke <jranke@uni-bremen.de>2022-12-06 10:33:24 +0100
commit478c6d5eec4c84b22b43adcbdf36888b302ead00 (patch)
tree57adb0fdac19ec877bc0fbc20aa12366e0ea4341 /R
parente3057a3a71dbbd9028e192885d17a92607428296 (diff)
Some parplot improvements
llquant argument, improved legend text, tests
Diffstat (limited to 'R')
-rw-r--r--R/parplot.R16
1 files changed, 12 insertions, 4 deletions
diff --git a/R/parplot.R b/R/parplot.R
index 98579779..63306ac2 100644
--- a/R/parplot.R
+++ b/R/parplot.R
@@ -10,7 +10,10 @@
#'
#' @param object The [multistart] object
#' @param llmin The minimum likelihood of objects to be shown
-#' @param scale By default, scale parameters using the best available fit.
+#' @param llquant Fractional value for selecting only the fits with higher
+#' likelihoods. Overrides 'llmin'.
+#' @param scale By default, scale parameters using the best
+#' available fit.
#' If 'median', parameters are scaled using the median parameters from all fits.
#' @param main Title of the plot
#' @param lpos Positioning of the legend.
@@ -28,7 +31,8 @@ parplot <- function(object, ...) {
#' @rdname parplot
#' @export
-parplot.multistart.saem.mmkin <- function(object, llmin = -Inf, scale = c("best", "median"),
+parplot.multistart.saem.mmkin <- function(object, llmin = -Inf, llquant = NA,
+ scale = c("best", "median"),
lpos = "bottomleft", main = "", ...)
{
oldpar <- par(no.readonly = TRUE)
@@ -48,6 +52,10 @@ parplot.multistart.saem.mmkin <- function(object, llmin = -Inf, scale = c("best"
stop("parplot is only implemented for multistart.saem.mmkin objects")
}
ll <- sapply(object, llfunc)
+ if (!is.na(llquant[1])) {
+ if (llmin != -Inf) warning("Overriding 'llmin' because 'llquant' was specified")
+ llmin <- quantile(ll, 1 - llquant)
+ }
selected <- which(ll > llmin)
selected_parms <- all_parms[selected, ]
@@ -110,7 +118,7 @@ parplot.multistart.saem.mmkin <- function(object, llmin = -Inf, scale = c("best"
legend(lpos, inset = c(0.05, 0.05), bty = "n",
pch = 1, col = 3:1, lty = c(NA, NA, 1),
legend = c(
- "Starting parameters",
- "Original run",
+ "Original start",
+ "Original results",
"Multistart runs"))
}

Contact - Imprint