plotWF | R Documentation |
Visualize SPR workflow and status. plotWF
is the general function
that creates the plot.
plotwfOutput
and renderPlotwf
are used in Shiny UI and server
respectively, similar to plotOutput
and renderPlot
.
plotWF(
sysargs,
width = NULL, height = NULL,
elementId = NULL,
responsive = TRUE,
branch_method = "auto",
branch_no = NULL,
layout = "compact",
no_plot = FALSE,
plot_method = "svg",
out_format = "plot",
out_path = NULL,
show_legend = TRUE,
mark_main_branch = FALSE,
rstudio = FALSE,
in_log = FALSE,
rmarkdown = "detect",
verbose = FALSE,
show_warns = FALSE,
plot_ctr = TRUE,
pan_zoom = FALSE,
exit_point = 0
)
plotwfOutput(
outputId,
width = '100%',
height = '400px'
)
renderPlotwf(
expr,
env = parent.frame(),
quoted = FALSE
)
sysargs |
object of class |
width |
string, a valid CSS string for width, like "500px", "100%". |
height |
string, a valid CSS string for height, like "500px", "100%". |
elementId |
string, optional ID value for the plot. |
responsive |
bool, should the plot be responsive? useful in Rstudio built-in viewer, Rmarkdown, Shiny or embed it into other web pages. |
branch_method |
string, one of "auto", "choose". How to determine the main branch of the workflow. "auto" will be determined by internal alrgothrim: Branches connecting the frist and last step and/or the longest will be favored. "choose" will list all possible branches and you can make a choice. |
branch_no |
numeric, only works if |
layout |
string, one of "compact", "vertical", "horizontal", "execution". |
no_plot |
bool, if you want to assgin the plot to a variable and do not want
to see it interactively, change this to |
plot_method |
string, one of "svg", "png", how to make plot, use svg or png to embed the plot. |
out_format |
string, one of "plot", "html", "dot", "dot_print"
See |
out_path |
string, if the |
show_legend |
bool, show plot legend? |
mark_main_branch |
bool, color the main branch on the plot? |
rstudio |
bool, if you are using Rstudio, open the built-in viewer to see the
plot? Default is no, open the browser tab to see it plot. The default viewer is
too small to see the full plot clearly, so we recommend to use the browser tab.
However, if you are using this plot in Shiny apps, always turn |
in_log |
bool, is this plot been made in a SPR log file? If |
rmarkdown |
are you rendering this plot in a Rmarkdown document? default value is
"detect", this function will determine based on current R environment, or you
can force it to be |
verbose |
bool, turn on verbose mode will give you more information. |
show_warns |
bool, print the warning messages on the plot?. |
plot_ctr |
bool, add the plot control panel to the plot? This requires you to have internet connection. It will download some additional javascript libraries, and allow you to save the plot as png, jpg, svg, pdf or graphviz directly from the browser. |
pan_zoom |
bool, allow panning and zooming of the plot? Use mouse wheel
or touch pad to zoom in and out of the plot. You need to have internet
connection, additional javascript libraries will be loaded automatically online.
Cannot be used with |
exit_point |
numeric, for advanced debugging only, see details |
outputId |
string, shiny output ID |
expr |
An expression that generates a plotwf, like |
env |
The environment in which to evaluate |
quoted |
Is |
compact: try to plot steps as close as possible.
vertical: main branch will be placed vertically and side branches will be placed on the same horizontal level and sub steps of side branches will be placed vertically.
horizontal: main branch is placed horizontally and side branches and sub steps will be placed vertically.
execution: a linear plot to show the workflow execution order of all steps.
return intermediate results at different points and exit the function
0: no early exit
1: after all branches are found, return tree
2: after the new tree has been built, return new nodes
3: after dot translation, return graph string
Rmarkdown will change some of the format and cause conflicts. If the plot can be rendered outside Rmd but cannot within Rmd, try to turn this option on. Some additional javascript processing will be performed to avoid the conflict but may cause unknown issues.
The plot rendering uses htmlwidgets
, which generates an interactive HTML page.
Saving these plots directly to standard image files, such as png
, is not possible.
However, a few workarounds exist to save to these image formats:
1: use webshot2::webshot
function.
2: use the interactive panel located on the top-left corner to download as an image after the plot is rendered.
3: use plotWF(sal, plot_method = "png")
to embed the plot as png
, and
then right-click to save the image.
Please see our website for examples: https://systempipe.org/sp/spr/sp_run/step_vis/
When the plot is rendered in a Shiny app, the rstudio
option must be turned on,
plotWF(sal, rstudio = TRUE, ...)
.
see out_format
and exit_point
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.