library("tinytable")
# Bar plots with single and dual colors
<- data.frame(
dat Metric = c("Sales", "Conversion", "Growth", "Efficiency"),
Value = c(75, 45, 92, 38),
Percentage = c(0.75, 0.45, 0.92, 0.38)
)
tt(dat) |>
plot_tt(j = 2, fun = "bar", data = as.list(dat$Value), color = "darkorange") |>
plot_tt(j = 3, fun = "bar", data = as.list(dat$Percentage),
color = c("steelblue", "lightgrey"), xlim = c(0, 1))
# Built-in plot types
<- list(mtcars$mpg, mtcars$hp, mtcars$qsec)
plot_data
<- data.frame(
dat Variables = c("mpg", "hp", "qsec"),
Histogram = "",
Density = "",
Line = ""
)
# Random data for sparklines
<- lapply(1:3, \(x) data.frame(x = 1:10, y = rnorm(10)))
lines
tt(dat) |>
plot_tt(j = 2, fun = "histogram", data = plot_data) |>
plot_tt(j = 3, fun = "density", data = plot_data, color = "darkgreen") |>
plot_tt(j = 4, fun = "line", data = lines, color = "blue") |>
style_tt(j = 2:4, align = "c")
# Custom function example (must have ... argument)
<- function(d, ...) {
custom_hist function() hist(d, axes = FALSE, ann = FALSE, col = "lightblue")
}
tt(data.frame(Variables = "mpg", Histogram = "")) |>
plot_tt(j = 2, fun = custom_hist, data = list(mtcars$mpg))
Insert images and inline plots into tinytable objects
Description
The plot_tt()
function allows for the insertion of images and inline plots into tinytable objects. This function can handle both local and web-based images.
Usage
plot_tt(
x,
i = NULL,
j = NULL,
fun = NULL,
data = NULL,
color = "black",
xlim = NULL,
height = 1,
height_plot = 400,
width_plot = 1200,
images = NULL,
sprintf = "%s",
assets = "tinytable_assets",
...
)
tt_plot(
x,
i = NULL,
j = NULL,
fun = NULL,
data = NULL,
color = "black",
xlim = NULL,
height = 1,
height_plot = 400,
width_plot = 1200,
images = NULL,
sprintf = "%s",
assets = "tinytable_assets",
...
)
Arguments
x
|
A tinytable object. |
i
|
Integer vector, the row indices where images are to be inserted. If NULL , images will be inserted in all rows.
|
j
|
Integer vector, the column indices where images are to be inserted. If NULL , images will be inserted in all columns.
|
fun
|
String or function to generate inline plots.
|
data
|
a list of data frames or vectors to be used by the plotting functions in fun .
|
color
|
string Name of color to use for inline plots (passed to the col argument base graphics plots in R ). For bar plots in static output formats (PNG, PDF, etc.), can be a vector of length 2: c(bar_color, background_color) to show progress against a maximum. Note: Tabulator format only uses the first color.
|
xlim
|
Numeric vector of length 2. Controls the range of bar plots. |
height
|
Numeric, the height of the images in the table in em units. |
height_plot
|
Numeric, the height of generated plot images in pixels (default: 400). |
width_plot
|
Numeric, the width of generated plot images in pixels (default: 1200). |
images
|
Character vector, the paths to the images to be inserted. Paths are relative to the main table file or Quarto (Rmarkdown) document. |
sprintf
|
Character string, a sprintf format string to format the generated cell content. Default is "%s" which displays the content as-is. Use this to wrap images or plots in custom markup. |
assets
|
Path to the directory where generated assets are stored. This path is relative to the location where a table is saved. |
…
|
Extra arguments are passed to the function in fun . Important: Custom plotting functions must always have … as an argument.
|
Details
The plot_tt()
can insert images and inline plots into tables.
Value
A modified tinytable object with images or plots inserted.