| Type: | Package | 
| Title: | Interface to the 'Handsontable.js' Library | 
| Version: | 0.3.8 | 
| Maintainer: | Jonathan Owen <jonathanro@gmail.com> | 
| Description: | An R interface to the 'Handsontable' JavaScript library, which is a minimalist Excel-like data grid editor. See https://handsontable.com/ for details. | 
| License: | MIT + file LICENSE | 
| URL: | http://jrowen.github.io/rhandsontable/ | 
| BugReports: | https://github.com/jrowen/rhandsontable/issues | 
| Imports: | jsonlite, htmlwidgets (≥ 0.3.3), magrittr, methods, utils | 
| Suggests: | knitr, rmarkdown, shiny (≥ 0.13), miniUI (≥ 0.1.1), rstudioapi (≥ 0.6), htmltools | 
| VignetteBuilder: | knitr | 
| RoxygenNote: | 7.1.1 | 
| Encoding: | UTF-8 | 
| NeedsCompilation: | no | 
| Packaged: | 2021-05-27 11:28:49 UTC; Dillon | 
| Author: | Jonathan Owen [aut, cre, cph], Jeff Allen [ctb], Yihui Xie [ctb], Enzo Martoglio [ctb], Inberg Ger [ctb], Warpechowski Marcin [ctb, cph] (Handsontable.js library), Handsoncode sp. z o.o. [ctb, cph] (Handsontable.js library), Aisch Gregor [ctb, cph] (Chroma.js library), Företagsplatsen [ctb, cph] (Numbro.js library), Draper Adam [ctb, cph] (Numeral.js library), Wood Tim [ctb, cph] (Moment.js library), Chernev Iskren [ctb, cph] (Moment.js library), Moment.js contributors [ctb, cph] (Moment.js library), Bushell David [ctb, cph] (Pikaday.js library), jQuery Foundation [ctb, cph] (jQuery.js library), Splunk Inc [ctb, cph] (Sparkline.js library), Russell Kent [ctb, cph] (Sparkline.js library), Rohan Jon [ctb, cph] (ZeroClipboard library), Greene James [ctb, cph] (ZeroClipboard library), Hammill Dillon [ctb] | 
| Repository: | CRAN | 
| Date/Publication: | 2021-05-27 11:50:03 UTC | 
rhandsontable
Description
R interface for creating tables using Handsontable, urlhttps://handsontable.com/
Details
For full documentation on the package, visit https://jrowen.github.io/rhandsontable/
Edit a Data Frame.
Description
Interactively edit a data.frame or data.table. The resulting
code will be emitted as a call to reload the data from a temp RDS file.
Usage
editAddin()
Details
This addin can be used to interactively edit. The intended way to use this is as follows:
1. Highlight a symbol naming a data.frame or data.table in your
R session, e.g. mtcars. 2. Execute this addin, to interactively edit
it.
When you're done, the code performing this operation will be emitted at the cursor position.
This function borrows heavily from rstudio/addinexamples/subsetAddin
Handsontable widget
Description
Configure single cell. See Handsontable.js for details.
Usage
hot_cell(hot, row, col, comment = NULL, readOnly = NULL)
Arguments
| hot | rhandsontable object | 
| row | numeric row index | 
| col | column name or index | 
| comment | character comment to add to cell | 
| readOnly | logical making the cell read-only | 
See Also
Examples
library(rhandsontable)
DF = data.frame(val = 1:10, bool = TRUE, big = LETTERS[1:10],
                small = letters[1:10],
                dt = seq(from = Sys.Date(), by = "days", length.out = 10),
                stringsAsFactors = FALSE)
rhandsontable(DF) %>%
  hot_cell(1, 1, comment = "Test comment") %>%
  hot_cell(2, 3, readOnly = TRUE)
Handsontable widget
Description
Configure single column.
Usage
hot_col(
  hot,
  col,
  type = NULL,
  format = NULL,
  source = NULL,
  strict = NULL,
  readOnly = NULL,
  validator = NULL,
  allowInvalid = NULL,
  halign = NULL,
  valign = NULL,
  renderer = NULL,
  copyable = NULL,
  dateFormat = NULL,
  default = NULL,
  language = NULL,
  ...
)
Arguments
| hot | rhandsontable object | 
| col | vector of column names or indices | 
| type | character specify the data type. Options include: numeric, date, checkbox, select, dropdown, autocomplete, password, and handsontable (not implemented yet) | 
| format | characer specifying column format. See Cell Types at Handsontable.js for the formatting options for each data type. Numeric columns are formatted using Numbro.js. | 
| source | a vector of choices for select, dropdown and autocomplete column types | 
| strict | logical specifying whether values not in the  | 
| readOnly | logical making the column read-only | 
| validator | character defining a Javascript function to be used
to validate user input. See  | 
| allowInvalid | logical specifying whether invalid data will be accepted. Invalid data cells will be color red. | 
| halign | character defining the horizontal alignment. Possible values are htLeft, htCenter, htRight and htJustify | 
| valign | character defining the vertical alignment. Possible values are htTop, htMiddle, htBottom | 
| renderer | character defining a Javascript function to be used to format column cells. Can be used to implement conditional formatting. | 
| copyable | logical defining whether data in a cell can be copied using Ctrl + C | 
| dateFormat | character defining the date format. See Moment.js for details. | 
| default | default column value for new rows (NA if not specified; shiny only) | 
| language | locale passed to Numbro.js; default is 'en-US'. | 
| ... | passed to handsontable | 
See Also
Examples
library(rhandsontable)
DF = data.frame(val = 1:10, bool = TRUE, big = LETTERS[1:10],
                small = letters[1:10],
                dt = seq(from = Sys.Date(), by = "days", length.out = 10),
                stringsAsFactors = FALSE)
rhandsontable(DF, rowHeaders = NULL) %>%
  hot_col(col = "big", type = "dropdown", source = LETTERS) %>%
  hot_col(col = "small", type = "autocomplete", source = letters,
          strict = FALSE)
Handsontable widget
Description
Configure multiple columns.
Usage
hot_cols(
  hot,
  colWidths = NULL,
  columnSorting = NULL,
  manualColumnMove = NULL,
  manualColumnResize = NULL,
  fixedColumnsLeft = NULL,
  ...
)
Arguments
| hot | rhandsontable object | 
| colWidths | a scalar or numeric vector of column widths | 
| columnSorting | logical enabling row sorting. Sorting only alters the table presentation and the original dataset row order is maintained. The sorting will be done when a user click on column name | 
| manualColumnMove | logical enabling column drag-and-drop reordering | 
| manualColumnResize | logical enabline column width resizing | 
| fixedColumnsLeft | a scalar indicating the number of columns to freeze on the left | 
| ... | passed to hot_col | 
See Also
Examples
library(rhandsontable)
DF = data.frame(val = 1:10, bool = TRUE, big = LETTERS[1:10],
                small = letters[1:10],
                dt = seq(from = Sys.Date(), by = "days", length.out = 10),
                stringsAsFactors = FALSE)
rhandsontable(DF) %>%
  hot_cols(columnSorting = TRUE)
Handsontable widget
Description
Configure the options for the right-click context menu
Usage
hot_context_menu(
  hot,
  allowRowEdit = TRUE,
  allowColEdit = TRUE,
  allowReadOnly = FALSE,
  allowComments = FALSE,
  allowCustomBorders = FALSE,
  customOpts = NULL,
  ...
)
Arguments
| hot | rhandsontable object | 
| allowRowEdit | logical enabling row editing | 
| allowColEdit | logical enabling column editing. Note that Handsontable does not support column add/remove when column types are defined (i.e. useTypes == TRUE in rhandsontable). | 
| allowReadOnly | logical enabling read-only toggle | 
| allowComments | logical enabling comments | 
| allowCustomBorders | logical enabling custom borders | 
| customOpts | list | 
| ... | ignored | 
Examples
library(rhandsontable)
DF = data.frame(val = 1:10, bool = TRUE, big = LETTERS[1:10],
                small = letters[1:10],
                dt = seq(from = Sys.Date(), by = "days", length.out = 10),
                stringsAsFactors = FALSE)
rhandsontable(DF) %>%
  hot_context_menu(allowRowEdit = FALSE, allowColEdit = FALSE)
Handsontable widget
Description
Add heatmap to table.
Usage
hot_heatmap(hot, cols, color_scale = c("#ED6D47", "#17F556"), renderer = NULL)
Arguments
| hot | rhandsontable object | 
| cols | numeric vector of columns to include in the heatmap. If missing all columns are used. | 
| color_scale | character vector that includes the lower and upper colors | 
| renderer | character defining a Javascript function to be used
to determine the cell colors. If missing,
 | 
Examples
MAT = matrix(rnorm(50), nrow = 10, dimnames = list(LETTERS[1:10],
             letters[1:5]))
rhandsontable(MAT) %>%
 hot_heatmap()
Handsontable widget
Description
Configure properties of all cells in a given row(s).
Note that hot_row is not to be confused with hot_rows.  See
Handsontable.js for details.
Usage
hot_row(hot, row, readOnly = NULL)
Arguments
| hot | rhandsontable object | 
| row | numeric vector of row indexes | 
| readOnly | logical making the row(s) read-only | 
See Also
Examples
library(rhandsontable)
MAT = matrix(rnorm(50), nrow = 10, dimnames = list(LETTERS[1:10],
             letters[1:5]))
rhandsontable(MAT, width = 300, height = 150) %>%
  hot_row(c(1,3:5), readOnly = TRUE)
Handsontable widget
Description
Configure row settings that pertain to the entire table.
Note that hot_rows is not to be confused with hot_row. See
Handsontable.js for details.
Usage
hot_rows(hot, rowHeights = NULL, fixedRowsTop = NULL)
Arguments
| hot | rhandsontable object | 
| rowHeights | a scalar or numeric vector of row heights | 
| fixedRowsTop | a scaler indicating the number of rows to freeze on the top | 
See Also
Examples
library(rhandsontable)
MAT = matrix(rnorm(50), nrow = 10, dimnames = list(LETTERS[1:10],
             letters[1:5]))
rhandsontable(MAT, width = 300, height = 150) %>%
  hot_cols(colWidths = 100, fixedColumnsLeft = 1) %>%
  hot_rows(rowHeights = 50, fixedRowsTop = 1)
Handsontable widget
Description
Configure table. See Handsontable.js for details.
Usage
hot_table(
  hot,
  contextMenu = TRUE,
  stretchH = "none",
  customBorders = NULL,
  highlightRow = NULL,
  highlightCol = NULL,
  enableComments = FALSE,
  overflow = NULL,
  rowHeaderWidth = NULL,
  ...
)
Arguments
| hot | rhandsontable object | 
| contextMenu | logical enabling the right-click menu | 
| stretchH | character describing column stretching. Options are 'all', 'right', and 'none' | 
| customBorders | json object | 
| highlightRow | logical enabling row highlighting for the selected cell | 
| highlightCol | logical enabling column highlighting for the selected cell | 
| enableComments | logical enabling comments in the table | 
| overflow | character setting the css overflow behavior. Options are auto (default), hidden and visible | 
| rowHeaderWidth | numeric width (in px) for the rowHeader column | 
| ... | passed to Handsontable.js constructor | 
See Also
Examples
library(rhandsontable)
DF = data.frame(val = 1:10, bool = TRUE, big = LETTERS[1:10],
                small = letters[1:10],
                dt = seq(from = Sys.Date(), by = "days", length.out = 10),
                stringsAsFactors = FALSE)
rhandsontable(DF) %>%
hot_table(highlightCol = TRUE, highlightRow = TRUE)
Handsontable widget
Description
Convert handsontable data to R object. Can be used in a shiny app
to convert the input json to an R dataset.
Usage
hot_to_r(...)
Arguments
| ... | passed to  | 
See Also
Handsontable widget
Description
Add numeric validation to a column
Usage
hot_validate_character(hot, cols, choices, allowInvalid = FALSE)
Arguments
| hot | rhandsontable object | 
| cols | vector of column names or indices | 
| choices | a vector of acceptable numeric choices. It will be evaluated after min and max if specified. | 
| allowInvalid | logical specifying whether invalid data will be accepted. Invalid data cells will be color red. | 
See Also
Examples
library(rhandsontable)
DF = data.frame(val = 1:10, bool = TRUE, big = LETTERS[1:10],
                small = letters[1:10],
                dt = seq(from = Sys.Date(), by = "days", length.out = 10),
                stringsAsFactors = FALSE)
rhandsontable(DF) %>%
  hot_validate_character(col = "big", choices = LETTERS[1:10])
Handsontable widget
Description
Add numeric validation to a column
Usage
hot_validate_numeric(
  hot,
  cols,
  min = NULL,
  max = NULL,
  choices = NULL,
  exclude = NULL,
  allowInvalid = FALSE
)
Arguments
| hot | rhandsontable object | 
| cols | vector of column names or indices | 
| min | minimum value to accept | 
| max | maximum value to accept | 
| choices | a vector of acceptable numeric choices. It will be evaluated after min and max if specified. | 
| exclude | a vector of unacceptable numeric values | 
| allowInvalid | logical specifying whether invalid data will be accepted. Invalid data cells will be color red. | 
See Also
Examples
library(rhandsontable)
MAT = matrix(rnorm(50), nrow = 10, dimnames = list(LETTERS[1:10],
             letters[1:5]))
rhandsontable(MAT * 10) %>%
  hot_validate_numeric(col = 1, min = -50, max = 50, exclude = 40)
rhandsontable(MAT * 10) %>%
  hot_validate_numeric(col = 1, choices = c(10, 20, 40))
Handsontable widget
Description
Shiny bindings for rhandsontable
Usage
rHandsontableOutput(outputId, width = "100%", height = "100%")
Arguments
| outputId | output variable to read from | 
| width,height | must be a valid CSS unit in pixels
or a number, which will be coerced to a string and have  | 
See Also
Handsontable widget
Description
Shiny bindings for rhandsontable
Usage
renderRHandsontable(expr, env = parent.frame(), quoted = FALSE)
Arguments
| expr | an expression that generates an rhandsontable. | 
| env | the environment in which to evaluate  | 
| quoted | is  | 
See Also
Handsontable widget
Description
Create a Handsontable.js widget.
Usage
rhandsontable(
  data,
  colHeaders,
  rowHeaders,
  comments = NULL,
  useTypes = TRUE,
  readOnly = NULL,
  selectCallback = FALSE,
  width = NULL,
  height = NULL,
  digits = 4,
  debug = NULL,
  search = FALSE,
  ...
)
Arguments
| data | a  | 
| colHeaders | a vector of column names. If missing  | 
| rowHeaders | a vector of row names. If missing  | 
| comments | matrix or data.frame of comments; NA values are ignored | 
| useTypes | logical specifying whether column classes should be mapped to equivalent Javascript types. Note that Handsontable does not support column add/remove when column types are defined (i.e. useTypes == TRUE in rhandsontable). | 
| readOnly | logical specifying whether the table is editable | 
| selectCallback | logical enabling the afterSelect event to return data. This can be used with shiny to tie updates to a selected table cell. | 
| width | numeric table width | 
| height | numeric table height | 
| digits | numeric passed to  | 
| debug | numeric Javascript log level | 
| search | logical specifying if the data can be searched (see https://jrowen.github.io/rhandsontable/#Customizing and Shiny example in inst/examples/rhandsontable_search) | 
| ... | passed to  | 
Details
For full documentation on the package, visit https://jrowen.github.io/rhandsontable/
See Also
hot_table, hot_cols, hot_rows, hot_cell
Examples
library(rhandsontable)
DF = data.frame(val = 1:10, bool = TRUE, big = LETTERS[1:10],
                small = letters[1:10],
                dt = seq(from = Sys.Date(), by = "days", length.out = 10),
                stringsAsFactors = FALSE)
rhandsontable(DF, rowHeaders = NULL)
rhandsontable exported operators
Description
The following functions are imported and then re-exported from the rhandsontable package to enable use of the magrittr pipe operator with no additional library calls
Handsontable widget
Description
Set data inside a Handsontable instance without recreating the widget. Send the new values as a vector of rows, a vector of columns, and a vector of values. If different length vectors are supplied then the shorter ones are recycled to match the length of the longest.
Usage
set_data(id, row, col, val, session, zero_indexed = F)
Arguments
| id | The id of the table to interact with. | 
| row | Integer vector of row indexes. | 
| col | Integer vector the column indexes. | 
| val | Vector of values to set at each row-col pair. | 
| session | The session that is associated with your shiny server function. The table is only interactive when used in shiny so we only use set_data when the table is in shiny. | 
| zero_indexed | Default FALSE. Set to TRUE if you are supplying row and col indexes that are already 0-based. |