Learn R Programming

h

u

x

t

a

b

l

e

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 common dplyr functions.
  • Automatic formatting for rmarkdown and quarto 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.
  • Output to PDF, PNG and SVG formats using typst.
  • Quick one-liners to print data frames into any supported format.
  • 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.

Copy Link

Version

Install

install.packages('huxtable')

Monthly Downloads

21,022

Version

5.8.0

License

MIT + file LICENSE

Maintainer

David Hugh-Jones

Last Published

November 7th, 2025

Functions in huxtable (5.8.0)

brdr_thickness

Get thickness of a brdr() object
caption

Set the table caption
cbind.huxtable

Combine rows or columns
caption_width

Set the width of the table caption
column_to_header

Convert a column to header rows
col_width

Set the width of table columns
fmt-numbers

Description for fmt_ functions
font

Set the font for cell text
fmt_pretty

Use prettyNum() to format numbers
mutate.huxtable

Use dplyr verbs with huxtable objects
final

Return the last n rows or columns
fmt_percent

Format numbers as percent
font_size

Make text larger or smaller
description-colors

Description of color format
escape_contents

Escape or unescape text in cells
by_rows

Set cell properties by row or column
by_values

Map specific cell values to cell properties
caption_pos

Position the table's caption
header_cols

Mark rows or columns as headers
guess_knitr_output_format

Guess knitr output format
[.huxtable

Subset a huxtable
huxtable-FAQ

Frequently Asked Questions, including how to get help
huxtable-news

Changes to the huxtable package
huxreg

Create a huxtable to display model output
huxtable-package

Quick introduction to huxtable
hux_logo

Huxtable logo
huxtable

Create a huxtable
height

Set the table height
hux_prop_params

Shared documentation for huxtable property functions:
insert_column

Insert a row or column
huxtable-options

Package options
mapping-functions

How to set cell properties variably by cell contents
latex_float

Set the position of the table float in LaTeX
knit_print.huxtable

Print a huxtable within knitr
label

Set a table label for external referencing
markdown-note

Note about markdown vs. print_md()
merge_across

Merge cells across rows or down columns
markdown

Interpret cell content as markdown
jams

Prices of 3 jams
mapping-params

Mapping parameters
knit_print.data.frame

Print data frames in knitr using huxtable
print.huxtable

Format and print huxtables using a default method
quick-output

Quickly print objects to a PDF, TeX, Typst, HTML, Microsoft Office or RTF document, or PNG or SVG images
position

Set the table's position with respect to surrounding content
padding

Cell padding
set-outer

Set borders and padding around a rectangle of cells
set-multiple

Set left, right, top and bottom properties
report_latex_dependencies

Manage LaTeX dependencies for huxtables
reexports

Objects exported from other packages
row_height

Set the height of table rows
rowspecs

Different ways to select rows and columns
rtf_fc_tables

Create RTF font and color tables
number_format

Set how numbers are formatted in cells
span-overwrites-shadows

Section about colspan/rowspan
sanitize

Escape text for various formats
na_string

Change how NA values are printed
set_markdown_contents

Set cell contents, interpreting them as markdown
merge_repeated_rows

Merge repeated rows into multirow cells
spans

Extend cells over multiple rows and/or columns
merge_cells

Merge a range of cells
rotation

Rotate text within cells
restack-across-down

Restack huxtables across/down the page
split-across-down

Split a huxtable into multiple huxtables
table_environment

Set the "table" environment in LaTeX
t.huxtable

Transpose a huxtable
stripe

Return every n row or column numbers
stripes

Set background color stripes
set_contents

Set cell contents
tabular_environment

Set the table's tabular environment in LaTeX
print_rtf

Create RTF representing a huxtable
print_md

Create Markdown representing a huxtable
text_color

Set the color of text in cells
wrap

Wrap cell content over multiple lines
tidy_override

Change a model's tidy output
themes

Theme a huxtable
print_html

Create HTML representing a huxtable
width

Set the table width
valign

Set the vertical alignment of cell content
print_latex

Create LaTeX representing a huxtable
print_typst

Create Typst markup representing a huxtable
print_screen

Print a huxtable on screen
[<-.brdr

Replace a subset of a brdr object
style-functions

Set multiple properties on headers
set_default_properties

Default huxtable properties
as_flextable

Convert a huxtable for Word/Powerpoint
bold

Make cell text bold or italic
background_color

Set cell background color
align

Set the horizontal alignment of cell content
add_rows

Insert one huxtable into another
left_border_color

Set border colors
add_colnames

Add column or row names
as_Workbook

Convert a huxtable for Excel
as_huxtable

Convert objects to huxtables
add_footnote

Add a row with a footnote
by_cases

Map cell contents to properties using case_when
by_colorspace

Map numeric cell contents smoothly to colors
by_regex

Map cells matching a string or regex to cell properties
by_quantiles

Map numeric quantiles to cell properties
left_border

Set borders
left_border_style

Set border styles
by_ranges

Map numeric ranges to cell properties
brdr

Create a border object
by_function

Map cell contents to cell properties using a function or scale