Description Usage Arguments Details See Also Examples
View source: R/shinywrappers.R
Makes a reactive version of the given function that captures any printed
output, and also captures its printable result (unless
base::invisible()
), into a string. The resulting function is suitable
for assigning to an output
slot.
1 2 3 4 5 6 7 | renderPrint(
expr,
env = parent.frame(),
quoted = FALSE,
width = getOption("width"),
outputArgs = list()
)
|
expr |
An expression that may print output and/or return a printable R object. |
env |
The environment in which to evaluate |
quoted |
Is |
width |
The value for |
outputArgs |
A list of arguments to be passed through to the implicit
call to |
The corresponding HTML output tag can be anything (though pre
is
recommended if you need a monospace font and whitespace preserved) and should
have the CSS class name shiny-text-output
.
The result of executing func
will be printed inside a
utils::capture.output()
call.
Note that unlike most other Shiny output functions, if the given function
returns NULL
then NULL
will actually be visible in the output.
To display nothing, make your function return base::invisible()
.
renderText()
for displaying the value returned from a
function, instead of the printed output.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | isolate({
# renderPrint captures any print output, converts it to a string, and
# returns it
visFun <- renderPrint({ "foo" })
visFun()
# '[1] "foo"'
invisFun <- renderPrint({ invisible("foo") })
invisFun()
# ''
multiprintFun <- renderPrint({
print("foo");
"bar"
})
multiprintFun()
# '[1] "foo"\n[1] "bar"'
nullFun <- renderPrint({ NULL })
nullFun()
# 'NULL'
invisNullFun <- renderPrint({ invisible(NULL) })
invisNullFun()
# ''
vecFun <- renderPrint({ 1:5 })
vecFun()
# '[1] 1 2 3 4 5'
# Contrast with renderText, which takes the value returned from the function
# and uses cat() to convert it to a string
visFun <- renderText({ "foo" })
visFun()
# 'foo'
invisFun <- renderText({ invisible("foo") })
invisFun()
# 'foo'
multiprintFun <- renderText({
print("foo");
"bar"
})
multiprintFun()
# 'bar'
nullFun <- renderText({ NULL })
nullFun()
# ''
invisNullFun <- renderText({ invisible(NULL) })
invisNullFun()
# ''
vecFun <- renderText({ 1:5 })
vecFun()
# '1 2 3 4 5'
})
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.