Learn R Programming

⚠️There's a newer version (5.6.0) of this package.Take me there.

Huxtable is an R package to create styled tables in multiple output formats, with a friendly, modern interface. Features include:

  • Control over text styling, number format, background colour, borders, padding and alignment.
  • Table cells can span multiple rows and/or columns.
  • Table manipulation via standard R subsetting, or using dplyr.
  • Automatic formatting for knitr/rmarkdown documents.
  • huxreg() function for quick creation of regression tables.
  • Output to HTML, LaTeX, RTF, and Microsoft Word/Excel/Powerpoint, using the officer and openxlsx packages.
  • Quick one-liners to print data frames into a new PDF, HTML page, RTF or Microsoft document.
  • Formatted table display in the R console, including borders, colour, and text styles.

Installing

To install from r-universe:

install.packages("huxtable", repos = c("https://hughjonesd.r-universe.dev", 
                       "https://cloud.r-project.org"))

To install from CRAN:

install.packages('huxtable')

To install the latest version from github:

install.packages('remotes')
remotes::install_github('hughjonesd/huxtable')

Learning more

Check out the website, read the documentation or read the vignette in HTML or PDF.

Copy Link

Version

Install

install.packages('huxtable')

Monthly Downloads

9,307

Version

5.5.6

License

MIT + file LICENSE

Maintainer

David Hugh-Jones

Last Published

February 15th, 2024

Functions in huxtable (5.5.6)

borders

Set borders
by_rows

Set cell properties by row or column
column_to_header

Convert a column to header rows
header_cols

Mark rows or columns as headers
guess_knitr_output_format

Guess knitr output format
col_width

Set the width of table columns
escape_contents

Escape or unescape text in cells
mutate.huxtable

Use dplyr verbs with huxtable objects
hux_logo

Huxtable logo
height

Set the table height
font

Set the font for cell text
font_size

Make text larger or smaller
by_values

Map specific cell values to cell properties
cbind.huxtable

Combine rows or columns
fmt_pretty

Use prettyNum() to format numbers
fmt_percent

Format numbers as percent
caption_width

Set the width of the table caption
caption

Set the table caption
caption_pos

Position the table's caption
final

Return the last n rows or columns
[.huxtable

Subset a huxtable
knit_print.data.frame

Print data frames in knitr using huxtable
insert_column

Insert a row or column
knit_print.huxtable

Print a huxtable within knitr
huxreg

Create a huxtable to display model output
huxtable-package

Quick introduction to huxtable
huxtable-FAQ

Frequently Asked Questions, including how to get help
jams

Prices of 3 jams
padding

Set padding
number_format

Set how numbers are formatted in cells
merge_repeated_rows

Merge repeated rows into multirow cells
na_string

Change how NA values are printed
latex_float

Set the position of the table float in LaTeX
row_height

Set the height of table rows
rotation

Rotate text within cells
rowspecs

Different ways to select rows and columns
report_latex_dependencies

Manage LaTeX dependencies for huxtables
rtf_fc_tables

Create RTF font and color tables
label

Set a table label for external referencing
restack-across-down

Restack huxtables across/down the page
set_default_properties

Default huxtable properties
split-across-down

Split a huxtable into multiple huxtables
sanitize

Escape text for various formats
print.huxtable

Format and print huxtables using a default method
merge_cells

Merge a range of cells
huxtable

Create a huxtable
spans

Extend cells over multiple rows and/or columns
set_markdown_contents

Set cell contents, interpreting them as markdown
merge_across

Merge cells across rows or down columns
position

Set the table's position with respect to surrounding content
huxtable-options

Package options
huxtable-news

Changes to the huxtable package
t.huxtable

Transpose a huxtable
set_contents

Set cell contents
set-multiple

Set left, right, top and bottom properties
set-outer

Set borders and padding around a rectangle of cells
[<-.brdr

Replace a subset of a brdr object
style-functions

Set multiple properties on headers
print_md

Create Markdown representing a huxtable
table_environment

Set the "table" environment in LaTeX
print_rtf

Create RTF representing a huxtable
print_latex

Create LaTeX representing a huxtable
print_html

Create HTML representing a huxtable
quick-output

Quickly print objects to a PDF, TeX, HTML, Microsoft Office or RTF document
markdown

Interpret cell content as markdown
mapping-functions

How to set cell properties variably by cell contents
stripes

Set background color stripes
themes

Theme a huxtable
stripe

Return every n row or column numbers
reexports

Objects exported from other packages
valign

Set the vertical alignment of cell content
print_screen

Print a huxtable on screen
tabular_environment

Set the table's tabular environment in LaTeX
tidy_override

Change a model's tidy output
width

Set the table width
text_color

Set the color of text in cells
wrap

Wrap cell content over multiple lines
background_color

Set cell background color
as_huxtable

Convert objects to huxtables
add_colnames

Add column or row names
bold

Make cell text bold or italic
border-colors

Set border colors
align

Set the horizontal alignment of cell content
as_flextable

Convert a huxtable for Word/Powerpoint
add_footnote

Add a row with a footnote
add_rows

Insert one huxtable into another
as_Workbook

Convert a huxtable for Excel
by_function

Map cell contents to cell properties using a function or scale
brdr

Create a border object
by_quantiles

Map numeric quantiles to cell properties
border-styles

Set border styles
brdr_thickness

Get thickness of a brdr() object
by_cases

Map cell contents to properties using case_when
by_ranges

Map numeric ranges to cell properties
by_colorspace

Map numeric cell contents smoothly to colors
by_regex

Map cells matching a string or regex to cell properties