Package ‘hwriter’
October 13, 2022
Title HTML Writer - Outputs R Objects in HTML Format
Version 1.3.2.1
Author Gregoire Pau <[email protected]>
Depends R (>= 2.6.0)
Description Easy-to-use and versatile functions to output R objects in
HTML format.
Maintainer Gregoire Pau <[email protected]>
License LGPL-2.1
Repository CRAN
Date/Publication 2022-04-08 11:00:23 UTC
NeedsCompilation no
R topics documented:
hwriter-package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
hmakeTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
hwrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
hwriteImage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
openPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Index 10
hwriter-package HTML writer
Description
hwriter is an easy-to-use package able to format and output R objects in HTML format. It supports
advanced formatting, tables, CSS styling, Javascript, images and provides a convenient mapping
between R tables and HTML tables. hwriter generates XHTML 1.0 transitional HTML code.
See Examples and hwrite for more details.
1
2 hmakeTag
Package content
hwriter provides the following functions (but most of the job is carried out by hwrite):
hwrite outputs an R object in HTML format.
hwriteImage writes an image.
openPage, closePage handles HTML page/document creation.
hmakeTag is a low-level HTML tag formatting function.
Author(s)
Gregoire Pau, <[email protected]>, 2008
See Also
hwrite, hwriteImage, openPage, closePage, hmakeTag.
Examples
hwriter:::showExample()
hmakeTag HTML/XML tag formatter
Description
Formats an HTML/XML tag, using a low-level syntax.
Usage
hmakeTag(tag, data=NULL, ..., newline=FALSE)
Arguments
tag a character vector or matrix containing the HTML/XML tags.
data a character vector or matrix containing the tag bodies.
newline a logical. Appends a newline \n character at the end of the tags.
... optional attributes that will be appended to the tags.
Details
This low-level function is used by hwrite to build HTML tags. This function is useful to build
non-standard or rare HTML tags.
Value
A character vector or matrix, containing the output HTML/XML tags.
hwrite 3
Author(s)
Gregoire Pau, <[email protected]>, 2008
See Also
hwrite.
Examples
## simple call
hmakeTag('a','Centipede',href='http://en.wikipedia.org/wiki/Centipede')
## vectorized calls
hmakeTag('tag',1:10,color='red')
hmakeTag(colors()[1:10],1:10,semantic='color')
## nested calls
hmakeTag('html',hmakeTag('body','Text'),'xml:lang'='en')
hwrite HTML writer
Description
Outputs an R object in HTML format.
Usage
hwrite(x, page=NULL, ...)
Arguments
x an R object to output in HTML format. Objects of type character, vector,
matrix and data.frame are currently supported.
page an optional connection, a character string naming the file to write to or a page
object returned by openPage.
... optional arguments. See Details.
Details
If x is a vector of only one element, it will be written by default as an HTML text element unless
table is TRUE: in that case, it will be written as an HTML table containing an unique element.
If x is a vector of more than one element, a matrix or a data.frame, it will be written by default as an
HTML table unless table is FALSE: in that case, it will be written as a vector or a matrix of HTML
text elements.
Many optional arguments can be used to render an HTML object. See below for additional informa-
tion. Many comprehensive examples can be found in the Examples section by typing example(hwrite).
4 hwrite
Value
A character vector containing the output HTML code.
General arguments
The following optional arguments can always be used:
br a logical specifying if a breakline (carriage return) should be appended at the end of x. Default
is FALSE.
table a logical controlling if the object x should be written as an HTML table. Default is TRUE for
matrices and vectors containing more than one element, and FALSE otherwise. If set to FALSE,
the object is written as a vector (or a matrix) of HTML text elements.
link a character vector containing the URLs the HTML element will point to. This argument is the
equivalent of the attribute href of the HTML tag <a>.
name a character string naming the HTML element for further reference. This is the equivalent of
the attribute name of the HTML tag <a>.
div a logical. If TRUE, places the HTML element into a HTML section, using the <div> HTML tag.
This is helpful for styling a section. Default is FALSE.
center a logical indicating if x should be centered. Default is FALSE. This element may interfere
with the current CSS style. Please consider the use the CSS style attribute "text-align" instead.
... Additional arguments are added to the HTML element as HTML attributes. For HTML tables,
attributes are distributed on table cells using R recycling rules. For text elements, a <span>
HTML tag (or <div> if div is TRUE) is used to accommodate the attributes.
Additional arguments for text elements
If x is rendered as an HTML text element, the following optional arguments can be used:
heading a numeric containing the heading level style. Valid values spans from 1 to 5. See Exam-
ples.
Additional arguments for vectors
If x is a vector with more than one element, the following optional arguments can be used:
dim a couple of optional numeric values indicating the desired number of rows and columns in the
table. This is useful to orient a vector.
byrow logical. If TRUE, the table is filled by rows first, otherwise the table is filled by columns first.
Default is FALSE.
names a logical indicating if the names of the elements should be written if the vector is named.
Default is TRUE.
hwrite 5
Additional arguments for tables
If x is rendered as an HTML table element, the following optional arguments can be used:
border a numeric. Specifies the table border width. A value of 0 implies that no borders will be
drawn. This argument may interfere with the "border" CSS style attribute.
row.names, col.names a logical value indicating whether the row (resp. column) names of x are to
be written. Default is TRUE.
cellspacing, cellpadding a numeric. Defines the spacing and padding space in pixels between
cells. These arguments may interfere with the "border" and "padding" CSS style attributes.
width a character string. Specifies the global table width in HTML units (pixels or %).
col.width a named character vector. Specifies the columns width in HTML units (pixels or %)
where names of col.width are used to point column names of x. NAs may be used to let
several column widths unspecified.
row.*, col.* a list of character vectors or a character vector. Distributes the attribute ’*’ on the
HTML table cells, according to rows (resp. columns). Named lists (or vectors) point the
corresponding rows/columns, according to their names. Unnamed lists (or vectors) point the
rows/columns in the numeric order and NAs can be used to omit rows/columns. If pointed
rows/columns sizes don’t match, vector values are recycled using R rules.
table.* a character string. Uses the global table attribute ’*’ to render the HTML table. The
attribute is added to the main <table> tag. Some uses include setting of the "border" and
"margin" CSS attributes that cannot be distributed on cells.
* a character string, vector or matrix. Distributes the attribute ’*’ on the HTML table cells, using R
recycling rules. Any valid HTML attributes can be used. The value may contain NAs to omit
cells. Matrices may contain one extra row and/or column to target heading cells.
See Examples for many illustrated examples of all arguments.
Author(s)
Gregoire Pau, <[email protected]>, 2008
See Also
openPage, closePage, hwriteImage, hmakeTag.
Examples
hwriter:::showExample()
6 hwriteImage
hwriteImage Insert an HTML image
Description
Inserts one or several images in an HTML document. The images can be either external ones
specified by URL or file path, or captured from the current graphic device.
Usage
hwriteImage(image.url, page=NULL, ..., image.border=0, width=NULL,
height=NULL, capture=FALSE)
Arguments
image.url a character vector or matrix containing the URL or the file path of images.
page an optional connection, a character string naming the file to write to or a page
object returned by openPage.
image.border an optional numeric value specifiying the width of the image border. Default is
0.
width, height an optional HTML length unit (in pixels) specifiying the width (resp. height) at
which the image should be rendered. If missing, the default image width (resp.
height) will be used.
capture a logical. If TRUE the image from the current graphic device is captured and
written as a PNG file to the filename specified by image.url. Capture resolution
is controlled by width and height, which have a default value of 400 pixels.
Default is FALSE.
... optional arguments that will be dispatched to the underlying hwrite call.
Details
hwriteImage constructs an HTML <img> tag to insert one or several images. This function can
be seamlessly in conjuction with hwrite to position an image. The capture argument enables to
capture easily a current plot and to insert it in a web page.
By default, if image.url is a vector the output value will be a character string containing the
HTML code of a table containing the images. This behaviour is dictated by the underlying hwrite
call made by hwriteImage. The argument table can be set to TRUE to obtain a vector of HTML
image tags instead.
Value
A character vector containing the output HTML code.
Author(s)
Gregoire Pau, <[email protected]>, 2008
openPage 7
See Also
hwrite.
Examples
## Creates a new web page 'test.html'
tmpdir <- tempdir()
p <- openPage('test.html', dirname=tmpdir)
## Insert an external image
img <- hwriteImage('http://www.ebi.ac.uk/~gpau/hwriter/iris1.jpg', center=TRUE)
hwrite(c(img,caption='Iris'), p, dim=c(2,1),
row.style=list(caption='text-align:center;background-color:#fac'),
row.names=FALSE, br=TRUE)
## Closes the web page
closePage(p)
## Opens a web browser to see the result
if (interactive()) try(browseURL(file.path(tmpdir, 'test.html')))
openPage HTML document/page management
Description
Opens and closes an HTML page/document, allowing a sequential building of an HTML page.
Usage
openPage(filename, dirname=NULL, title=filename, link.javascript=NULL,
link.css=NULL, css=NULL, head=NULL, charset="utf-8", lang="en",
head.attributes=NULL, body.attributes=NULL)
closePage(page, splash=TRUE)
Arguments
filename a character string containing the filename or the path of the HTML file to be
created.
dirname an optional character string containing the path of the directory where the file
should be written.
title an optional character string containing the title of the HTML page.
link.javascript
an optional character vector containing the URL of Javascripts to be associated
with the page.
8 openPage
link.css an optional character vector containing the URL of CSS stylesheets to be asso-
ciated with the page.
css an optional character vector containing inline CSS stylesheets to be associated
with the page.
head an optional character string containing an HTML fragment to be added in the
<head> section of the page.
charset an optional character string containing the current charset. Default is "utf-8".
lang an optional character string containing the current langage. Default is "en".
head.attributes
an optional named list of character strings, containing the <head> attributes.
body.attributes
an optional named list of character strings, containing the <body> attributes.
page a page handle returned by a previous openPage call.
splash a logical, indicating whether the hwriter splash tag ’generated by... should be
written at the end of the page.
Details
openPage opens a new file for writing and returns a page handle which is used by hwrite to append
HTML elements in a current page. Any previous existing file will be overwritten.
The argument head is useful to add extra HTML code in the <head> header code.
closePage ends the HTML page formatting, flushes the pending writing operations and closes the
file.
Value
A connection which is a handle to the current HTML page.
Author(s)
Gregoire Pau, <[email protected]>, 2008
See Also
hwrite, hmakeTag.
Examples
## Creates a new web page 'test.html' in the R temporary directory
tmpdir <- tempdir()
p <- openPage('test.html', dirname=tmpdir,
link.css='http://www.ebi.ac.uk/~gpau/hwriter/hwriter.css')
hwrite('Iris example', p, center=TRUE, heading=1)
hwrite(paste('This famous (Fisher\'s or Anderson\'s) iris data set',
'gives the measurements in centimeters of the variables',
'sepal length and width and petal length and width, respectively,',
'for 50 flowers from each of 3 species of iris.'),
openPage 9
p, class='king')
hwrite(iris, p, row.bgcolor='#ffffaa')
closePage(p)
## Opens a web browser on the web page
if (interactive()) try(browseURL(file.path(tmpdir, 'test.html')))
Index
interface
hmakeTag, 2
hwrite, 3
hwriteImage, 6
hwriter-package, 1
openPage, 7
closePage, 2, 5
closePage (openPage), 7
hmakeTag, 2, 2, 5, 8
hwrite, 2, 3, 3, 7, 8
hwriteImage, 2, 5, 6
hwriter (hwriter-package), 1
hwriter-package, 1
openPage, 2, 5, 7
10