antennaPlot.fn {CGManalyzer} | R Documentation |
draw an antenna plot
Description
function to draw an antenna plot
Usage
antennaPlot.fn(Mean, SSMD, Name, CIlower, CIupper, xRange = NA, yRange = NA,
col = 1:length(Mean), pch = 1:length(Mean), cex = 1, Position = "topleft", main = "")
Arguments
Mean |
vector for mean difference in a comparison |
SSMD |
vector for strictly standardized mean difference (ssmd) in a comparison |
Name |
vector for name of pairs in a comparison |
CIlower |
vector for the lower bound of confidence interval |
CIupper |
vector for the upper bound of confidence interval |
xRange |
pre-defined range for the x-axis if needed |
yRange |
pre-defined range for the y-axis if needed |
col |
vector of colors for pairs in a comparison |
pch |
vector of point types for pairs in a comparison |
cex |
cex for the legend |
Position |
position indicating where to put the legend, such as 'topleft' |
main |
title name |
Details
a function to draw an antenna plot, namely, plot ssmd vs. mean difference with confidence interval.
Value
no return value
Author(s)
Xiaohua Douglas Zhang
References
Zhang XD, Zhang Z, Wang D. 2018. CGManalyzer: an R package for analyzing continuous glucose monitoring studies. Bioinformatics 34(9): 1609-1611 (DOI: 10.1093/bioinformatics/btx826).
Examples
library(CGManalyzer)
package.name <- "CGManalyzer"
source( system.file("SPEC", "SPECexample.R", package = package.name) )
scalesInTime <- Scales*equal.interval
pvalSSMD.mat <- read.csv(file=system.file("SPEC", "pvalSSMD.csv", package = package.name),
row.names=1)
outNames <- dimnames(pvalSSMD.mat)[[2]]
SSMD.mat <- as.matrix( pvalSSMD.mat[, substring(outNames, 1, 4) == "SSMD"] )
mDiff.mat <- as.matrix(pvalSSMD.mat[, substring(outNames, 1, 5) == "mDiff"])
CIlower.mat <- as.matrix(pvalSSMD.mat[, substring(outNames, 1, 7) == "CIlower"])
CIupper.mat <- as.matrix(pvalSSMD.mat[, substring(outNames, 1, 7) == "CIupper"])
pairNames <- gsub("mDiff_", "", dimnames(mDiff.mat)[[2]], fixed=TRUE)
idx = 1:4
xRange <- range( c( range( CIlower.mat[idx,], na.rm=TRUE), 0,
range( CIupper.mat[idx,], na.rm=TRUE) ) )
yRange <- range( c(0, range( SSMD.mat[idx,], na.rm=TRUE ) ) )
par(mfrow=c(2,2))
for( i in idx ) {
Main <- paste0("Sample entropy at a scale of ", scalesInTime[i], " ", timeUnit, "s")
condt <- !is.na(mDiff.mat[i,]) & !is.na(SSMD.mat[i,])
antennaPlot.fn(Mean=mDiff.mat[i,condt], SSMD=SSMD.mat[i, condt], Name = pairNames[condt],
CIlower=CIlower.mat[i,condt], CIupper=CIupper.mat[i,condt], xRange=xRange,
yRange=yRange, col=1:length(pairNames[condt]), pch=1:length(pairNames[condt]),
cex=0.8, Position = "topleft", main = Main)
}