Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

latexDotchart

Enhanced Dot Chart for LaTeX Picture Environment with epic


Description

latexDotchart is a translation of the dotchart3 function for producing a vector of character strings containing LaTeX picture environment markup that mimics dotchart3 output. The LaTeX epic and color packages are required. The add and horizontal=FALSE options are not available for latexDotchart, however.

Usage

latexDotchart(data, labels, groups=NULL, gdata=NA, 
  xlab='', auxdata, auxgdata=NULL, auxtitle,
  w=4, h=4, margin,      
  lines=TRUE, dotsize = .075, size='small', size.labels='small',
  size.group.labels='normalsize', ttlabels=FALSE, sort.=TRUE,
  xaxis=TRUE, lcolor='gray', ...)

Arguments

data

a numeric vector whose values are shown on the x-axis

labels

a vector of labels for each point, corresponding to x. If omitted, names(data) are used, and if there are no names, integers prefixed by "#" are used.

groups

an optional categorical variable indicating how data values are grouped

gdata

data values for groups, typically summaries such as group medians

xlab

x-axis title

auxdata

a vector of auxiliary data, of the same length as the first (data) argument. If present, this vector of values will be printed outside the right margin of the dot chart. Usually auxdata represents cell sizes.

auxgdata

similar to auxdata but corresponding to the gdata argument. These usually represent overall sample sizes for each group of lines.

auxtitle

if auxdata is given, auxtitle specifies a column heading for the extra printed data in the chart, e.g., "N"

w

width of picture in inches

h

height of picture in inches

margin

a 4-vector representing, in inches, the margin to the left of the x-axis, below the y-axis, to the right of the x-axis, and above the y-axis. By default these are computed making educated cases about how to accommodate auxdata etc.

lines

set to FALSE to suppress drawing of reference lines

dotsize

diameter of filled circles, in inches, for drawing dots

size

size of text in picture. This and the next two arguments are LaTeX font commands without the opening backslash, e.g., 'normalsize', 'small', 'large', smaller[2].

size.labels

size of labels

size.group.labels

size of labels corresponding to groups

ttlabels

set to TRUE to use typewriter monospaced font for labels

sort.

set to FALSE to keep latexDotchart from sorting the input data, i.e., it will assume that the data are already properly arranged. This is especially useful when you are using gdata and groups and you want to control the order that groups appear on the chart (from top to bottom).

xaxis

set to FALSE to suppress drawing x-axis

lcolor

color for horizontal reference lines. Default is "gray"

...

ignored

Author(s)

Frank Harrell
Department of Biostatistics
Vanderbilt University
fh@fharrell.com

See Also

Examples

## Not run: 
z <- latexDotchart(c(.1,.2), c('a','bbAAb'), xlab='This Label',
                   auxdata=c(.1,.2), auxtitle='Zcriteria')
f <- '/tmp/t.tex'
cat('\documentclass{article}\n\usepackage{epic,color}\n\begin{document}\n', file=f)
cat(z, sep='\n', file=f, append=TRUE)
cat('\end{document}\n', file=f, append=TRUE)

set.seed(135)
maj <- factor(c(rep('North',13),rep('South',13)))
g <- paste('Category',rep(letters[1:13],2))
n <- sample(1:15000, 26, replace=TRUE)
y1 <- runif(26)
y2 <- pmax(0, y1 - runif(26, 0, .1))
z <- latexDotchart(y1, g, groups=maj, auxdata=n, auxtitle='n', xlab='Y',
                   size.group.labels='large', ttlabels=TRUE)
f <- '/tmp/t2.tex'
cat('\documentclass{article}\n\usepackage{epic,color}\n\begin{document}\n\framebox{', file=f)
cat(z, sep='\n', file=f, append=TRUE)
cat('}\end{document}\n', file=f, append=TRUE)

## End(Not run)

Hmisc

Harrell Miscellaneous

v4.5-0
GPL (>= 2)
Authors
Frank E Harrell Jr <fh@fharrell.com>, with contributions from Charles Dupont and many others.
Initial release
2021-02-27

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.