]> git.donarmstrong.com Git - xtable.git/blob - pkg/R/xtableFtable.R
Adding support for ftable objects---still incomplete
[xtable.git] / pkg / R / xtableFtable.R
1 ### ftable objects, requested by Charles Roosen
2 ### Feature request #2248, 2/9/2012
3 xtableFtable <- function(x, caption = NULL, label = NULL, align = NULL,
4                          digits = NULL, display = NULL, auto = FALSE,
5                          quote = TRUE,
6                          method = c("non.compact", "row.compact",
7                                     "col.compact", "compact"),
8                          lsep = " | ", ...) {
9   ftbl <- format.ftable(x, quote = quote, digits = digits,
10                         method = method, lsep = lsep)
11   xftbl <- xtable.matrix(ftbl,
12                          caption = caption, label = label, align = align,
13                          digits = digits, display = display, auto = auto)
14   class(xftbl) <- c("xtableFtable", "data.frame")
15   attributes(xftbl) <- list(attributes(xftbl), attributes(ftbl))
16   return(xftbl)
17 }
18                          
19 print.xtableFtable <- function(x,
20   type = getOption("xtable.type", "latex"),
21   file = getOption("xtable.file", ""),
22   append = getOption("xtable.append", FALSE),
23   floating = getOption("xtable.floating", TRUE),
24   floating.environment = getOption("xtable.floating.environment", "table"),
25   table.placement = getOption("xtable.table.placement", "ht"),
26   caption.placement = getOption("xtable.caption.placement", "bottom"),
27   caption.width = getOption("xtable.caption.width", NULL),
28   latex.environments = getOption("xtable.latex.environments", c("center")),
29   tabular.environment = getOption("xtable.tabular.environment", "tabular"),
30   size = getOption("xtable.size", NULL),
31   hline.after = getOption("xtable.hline.after", c(-1,0,nrow(x))),
32   NA.string = getOption("xtable.NA.string", ""),
33   only.contents = getOption("xtable.only.contents", FALSE),
34   add.to.row = getOption("xtable.add.to.row", NULL),
35   sanitize.text.function = getOption("xtable.sanitize.text.function", NULL),
36   math.style.negative = getOption("xtable.math.style.negative", FALSE),
37   math.style.exponents = getOption("xtable.math.style.exponents", FALSE),
38   html.table.attributes = getOption("xtable.html.table.attributes", "border=1"),
39   print.results = getOption("xtable.print.results", TRUE),
40   format.args = getOption("xtable.format.args", NULL),
41   booktabs = getOption("xtable.booktabs", FALSE),
42   scalebox = getOption("xtable.scalebox", NULL),
43   width = getOption("xtable.width", NULL),
44   comment = getOption("xtable.comment", TRUE),
45   timestamp = getOption("xtable.timestamp", date()),
46   ...) {
47   if (type == "latex"){
48     if (is.null(align) {
49       align <- c(rep("r", nRowVars)
50     } else {
51     stop("print.xtableFtable not yet implemented for this type")
52   }
53 }
54