fpDrawCI: Draw standard confidence intervals

Description Usage Arguments Value See Also Examples

Description

A function that is used to draw the different confidence intervals for the non-summary lines. Use the fpDrawNormalCI function as a template if you want to make your own funky line + marker.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
fpDrawNormalCI(lower_limit, estimate, upper_limit, size, y.offset = 0.5,
  clr.line, clr.marker, lwd, ...)

fpDrawDiamondCI(lower_limit, estimate, upper_limit, size, y.offset = 0.5,
  clr.line, clr.marker, lwd, ...)

fpDrawCircleCI(lower_limit, estimate, upper_limit, size, y.offset = 0.5,
  clr.line, clr.marker, lwd, ...)

fpDrawPointCI(lower_limit, estimate, upper_limit, size, y.offset = 0.5,
  clr.line, clr.marker, lwd, pch = 1, ...)

fpDrawSummaryCI(lower_limit, estimate, upper_limit, size, col, y.offset = 0.5,
  ...)

Arguments

lower_limit

The lower limit of the confidence line. A native numeric variable that can actually be outside the boundaries. If you want to see if it is outside then convert it to 'npc' and see if the value ends up more than 1 or less than 0. Here's how you do the conversion: convertX(unit(upper_limit, "native"), "npc", valueOnly = TRUE) and the convertX together with unit is needed to get the right values while you need to provide the valueOnly as you cannot compare a unit object.

estimate

The estimate indicating the placement of the actual box. Note, this can also be outside bounds and is provided in a numeric format the same way as the lower_limit.

upper_limit

The upper limit of the confidence line. See lower_limit for details.

size

The actual size of the box/diamond/marker. This provided in the 'snpc' format to generate a perfect marker. Although you can provide it alternative units as well, this is useful for the legends to work nicely.

y.offset

If you have multiple lines they need an offset in the y-direction.

clr.line

The color of the line.

clr.marker

The color of the estimate marker

lwd

Line width

...

Allows additional parameters for sibling functions

pch

Type of point see grid.points for details

col

The color of the summary diamond.

Value

void The function outputs the line using grid compatible functions and does not return anything.

See Also

Other forestplot functions: forestplot2; fpColors

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
ask <- par(ask=TRUE)
library(grid)
test_data <- data.frame(coef1=c(1, 1.59, 1.3, 1.24),
                        coef2=c(1, 1.7, 1.4, 1.04))

test_data$low1 <- test_data$coef1 - 1.96*c(0, .2, .1, .15)
test_data$high1 <- test_data$coef1 + 1.96*c(0, .2, .1, .15)

test_data$low2 <- test_data$coef2 - 1.96*c(0, .1, .15, .2)
test_data$high2 <- test_data$coef2 + 1.96*c(0, .1, .15, .2)

col_no <- grep("coef", colnames(test_data))
row_names <- list(
  list("Category 1", "Category 2", "Category 3", expression(Category >= 4)),
  list("ref", 
       substitute(expression(bar(x) == val), 
                  list(val = round(rowMeans(test_data[2, col_no]), 2))), 
       substitute(expression(bar(x) == val), 
                  list(val = round(rowMeans(test_data[3, col_no]), 2))), 
       substitute(expression(bar(x) == val), 
                  list(val = round(rowMeans(test_data[4, col_no]), 2))))
)

coef <- with(test_data, cbind(coef1, coef2))
low <- with(test_data, cbind(low1, low2))
high <- with(test_data, cbind(high1, high2))

# Change all to diamonds
forestplot2(row_names, coef, low, high, 
            confintNormalFn=fpDrawDiamondCI,
            main="Cool study",
            zero = 1, boxsize=0.5,
            col=fpColors(box=c("royalblue", "gold"),
                         line=c("darkblue", "orange"),
                         summary=c("darkblue", "red")),
            xlab="The estimates",
            new_page = TRUE, 
            legend.title="Group",
            legend=c("Treatment", "Placebo"),
            legend.pos=list("topright"),
            legend.r = unit(.1, "snpc"),
            legend.gp = gpar(col="#CCCCCC", lwd=1.5))

# Change first to diamonds
forestplot2(row_names, coef, low, high, 
            confintNormalFn=c("fpDrawDiamondCI", 
                              rep("fpDrawNormalCI", 
                                  times=nrow(coef)-1)),
            main="Cool study",
            zero = 1, boxsize=0.5,
            col=fpColors(box=c("royalblue", "gold"),
                         line=c("darkblue", "orange"),
                         summary=c("darkblue", "red")),
            xlab="The estimates",
            new_page = TRUE, 
            legend.title="Group",
            legend=c("Treatment", "Placebo"),
            legend.pos=list("topright"),
            legend.r = unit(.1, "snpc"),
            legend.gp = gpar(col="#CCCCCC", lwd=1.5))

# You can also use a list with the actual functions
# as long as it is formatted [[row]][[column]]
# Note: if you have a non-square input then
# the software will reformat [[col]][[row]]
# to [[row]][[col]]
forestplot2(row_names, coef, low, high, 
            confintNormalFn=list(list(fpDrawDiamondCI, fpDrawCircleCI),
                                 list(fpDrawNormalCI, fpDrawNormalCI),
                                 list(fpDrawNormalCI, fpDrawCircleCI),
                                 list(fpDrawNormalCI, fpDrawNormalCI)),
            main="Cool study",
            zero = 1, boxsize=0.5,
            col=fpColors(box=c("royalblue", "gold"),
                         line=c("darkblue", "orange"),
                         summary=c("darkblue", "red")),
            xlab="The estimates",
            new_page = TRUE, 
            legend.title="Group",
            legend=c("Treatment", "Placebo"),
            legend.pos=list("topright"),
            legend.r = unit(.1, "snpc"),
            legend.gp = gpar(col="#CCCCCC", lwd=1.5))

par(ask=ask)

raredd/Gmisc0 documentation built on May 27, 2019, 2:02 a.m.