Description Usage Arguments Details Value Author(s) See Also Examples
Create an Open Document Format table from a data frame, matrix or vector
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 | odfTable(x, ...)
## S3 method for class 'numeric'
odfTable(x,
horizontal = length(x) < 5,
colnames = names(x),
digits = max(3, getOption("digits") - 3),
name = paste("Table", floor(runif(1) * 1000), sep = ""),
styles = NULL,
...)
## S3 method for class 'character'
odfTable(x,
horizontal = length(x) < 5,
colnames = names(x),
name = paste("Table", floor(runif(1) * 1000), sep = ""),
styles = NULL,
...)
## S3 method for class 'data.frame'
odfTable(x,
colnames = NULL,
useRowNames = TRUE,
digits = max(3, getOption("digits") - 3),
name = paste("Table", floor(runif(1) * 1000), sep = ""),
styles = NULL,
cgroup = NULL,
rgroup = NULL,
...)
## S3 method for class 'matrix'
odfTable(x,
colnames = NULL,
useRowNames = TRUE,
digits = max(3, getOption("digits") - 3),
name = paste("Table", floor(runif(1) * 1000), sep = ""),
styles = NULL,
cgroup = NULL,
rgroup = NULL,
...)
|
x |
A vector, matrix or data frame. |
horizontal |
A logical: should the vector be shown as a 1xn table or nx1? This is ignored for other data structures. |
colnames |
A vector of column names that can be used. Note that if the row names are used in the table, this should contain an extra element for that column. |
useRowNames |
A logical: should the row names be printed in the final table. |
digits |
Number of significant digits passed to |
name |
A name for the table. ODF requires a name for each object, so a random name will be used if unspecified. |
styles |
An optional list of style names for each table element
(cells, headers etc). See |
cgroup |
A data frame with two, three, or four columns.
The first column should be a character vector specifying column group header names.
The resulting row will come before the header names specified via the
|
rgroup |
A data frame with two, three, or four columns.
The first column should be a character vector specifying row group header names.
The second column should be a numeric vector specifying the row span for the
corresponding element of the first column.
The sum of the second column must be equal to the number of rows in |
... |
Optional arguments that can be passed to |
The data structures are converted to character matrices using format
.
The justify
and trim
arguments to format
are usually
overridden by the table style options, so those arguments are automatically set
to justify = "none"
and trim = TRUE
. However, if values of these
arguments are passed using the three dots, format will use them (but they
probably won't do anything).
When using odfTable
in a code chunk, the chunk's results
argument should be set to xml
.
The document formatting.odt in the package's examples directory illustrates the process of changing the appearance of the table.
a list of character string that contain XML markup
Max Kuhn, with contributions from Zekai Otles
1 |
Loading required package: lattice
Loading required package: XML
<table:table table:name="Table804" table:style-name="RTable1" >
<table:table-column table:number-columns-repeated="6"/>
<table:table-header-rows>
<table:table-row>
<table:table-cell table:style-name="lowerBorder" office:value-type="string">
<text:p text:style-name="ArialCenteredBold" ></text:p>
</table:table-cell>
<table:table-cell table:style-name="lowerBorder" office:value-type="string">
<text:p text:style-name="ArialCenteredBold" >Sepal.Length</text:p>
</table:table-cell>
<table:table-cell table:style-name="lowerBorder" office:value-type="string">
<text:p text:style-name="ArialCenteredBold" >Sepal.Width</text:p>
</table:table-cell>
<table:table-cell table:style-name="lowerBorder" office:value-type="string">
<text:p text:style-name="ArialCenteredBold" >Petal.Length</text:p>
</table:table-cell>
<table:table-cell table:style-name="lowerBorder" office:value-type="string">
<text:p text:style-name="ArialCenteredBold" >Petal.Width</text:p>
</table:table-cell>
<table:table-cell table:style-name="lowerBorder" office:value-type="string">
<text:p text:style-name="ArialCenteredBold" >Species</text:p>
</table:table-cell>
</table:table-row>
</table:table-header-rows>
<table:table-row>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >1</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >5.1</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >3.5</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >1.4</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >0.2</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >setosa</text:p>
</table:table-cell>
</table:table-row>
<table:table-row>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >2</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >4.9</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >3.0</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >1.4</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >0.2</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >setosa</text:p>
</table:table-cell>
</table:table-row>
<table:table-row>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >3</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >4.7</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >3.2</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >1.3</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >0.2</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >setosa</text:p>
</table:table-cell>
</table:table-row>
<table:table-row>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >4</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >4.6</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >3.1</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >1.5</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >0.2</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >setosa</text:p>
</table:table-cell>
</table:table-row>
<table:table-row>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >5</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >5.0</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >3.6</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >1.4</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >0.2</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" table:style-name="noBorder" >
<text:p text:style-name="ArialCentered" >setosa</text:p>
</table:table-cell>
</table:table-row>
</table:table>
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.