Skip to contents

Used to extract the specified page from the current figure.

Usage

FG_extract_page(state, page)

Arguments

state

FG state from FG_fetch_state()

page

Page number to extract

Value

ggplot object with the specified page.

Examples

# \donttest{
library(formods)
# Within shiny both session and input variables will exist,
# this creates examples here for testing purposes:
sess_res = FG_test_mksession()
#> → ASM: including file
#> → ASM:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → ASM:   dest:   file.path("config","report.docx")
#> → ASM: including file
#> → ASM:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → ASM:   dest:   file.path("config","report.pptx")
#> → ASM: including file
#> → ASM:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → ASM:   dest:   file.path("config","report.yaml")
#> → ASM: State initialized
#> → ASM: setting word placeholders: 
#> → ASM:   -> setting docx ph: HEADERLEFT = left header
#> → ASM:   -> setting docx ph: HEADERRIGHT = right header
#> → ASM:   -> setting docx ph: FOOTERLEFT = left footer
#> → ASM: module isgood: TRUE
#> → UD: including file
#> → UD:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → UD:   dest:   file.path("config","report.docx")
#> → UD: including file
#> → UD:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → UD:   dest:   file.path("config","report.pptx")
#> → UD: including file
#> → UD:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → UD:   dest:   file.path("config","report.yaml")
#> → UD: State initialized
#> → UD: module checksum updated:897d952fecbc804999396a96f9df4b20
#> → UD: module isgood: TRUE
#> → DM: including file
#> → DM:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → DM:   dest:   file.path("config","report.docx")
#> → DM: including file
#> → DM:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → DM:   dest:   file.path("config","report.pptx")
#> → DM: including file
#> → DM:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → DM:   dest:   file.path("config","report.yaml")
#> → DM: module checksum updated: 441abbd92e02d893eb5136ccdfcc717d
#> → DM: State initialized
#> → DM: ds checksum updated: 641fcbc6616d24d05acded4317a3bb12
#> → DM: module checksum updated: 5c077c5702479f330bf233040eb4a51b
#> → DM: adding preload sources
#> → DM:  - file added: TEST_DATA.xlsx
#> → DM: added: TEST_DATA.xlsx
#> → DM:  - url added: https://raw.githubusercontent.com/john-harrold/formods/refs/heads/master/inst/test_data/SDTM_PC.csv
#> → DM: url added: https://raw.githubusercontent.com/john-harrold/formods/refs/heads/master/inst/test_data/SDTM_PC.csv
#> → DM:  - url added: https://raw.githubusercontent.com/john-harrold/formods/refs/heads/master/inst/test_data/SDTM_EX.csv
#> → DM: url added: https://raw.githubusercontent.com/john-harrold/formods/refs/heads/master/inst/test_data/SDTM_EX.csv
#> → DM:  - url added: https://raw.githubusercontent.com/john-harrold/formods/refs/heads/master/inst/test_data/SDTM_DM.csv
#> → DM: url added: https://raw.githubusercontent.com/john-harrold/formods/refs/heads/master/inst/test_data/SDTM_DM.csv
#> → DM: loading element idx: 1
#> → DM: ds checksum updated: 90805ca6c41a39696e1572d9b0a75868
#> → DM: module checksum updated: e23d5c825540acc0ebc26cb74c8b151a
#> → DM: added element idx: 1
#> → DM: loading element idx: 2
#> → DM: ds checksum updated: 9c3a8542d254046878c60fa9fc3a9335
#> → DM: module checksum updated: 194ce30f027d384329d7ebfa10a22139
#> → DM: added element idx: 2
#> → DM: loading element idx: 3
#> → DM: ds checksum updated: ab02ea20ac85281e9ad51fb6ba1fcc6e
#> → DM: module checksum updated: dd0865727e86431e3266098b651365f7
#> → DM: added element idx: 3
#> → DM: loading element idx: 4
#> → DM: ds checksum updated: f9ceb110276faef63eb17f10587284a0
#> → DM: module checksum updated: e04d080fd4c4e9c4fee15201caee2f76
#> → DM: added element idx: 4
#> → DM: module isgood: TRUE
#> → DW: including file
#> → DW:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → DW:   dest:   file.path("config","report.docx")
#> → DW: including file
#> → DW:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → DW:   dest:   file.path("config","report.pptx")
#> → DW: including file
#> → DW:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → DW:   dest:   file.path("config","report.yaml")
#> → DW: State initialized
#> → DW: module checksum updated:a9496b622f92f683cc8c69f65ac1ece4
#> → DW: loading data view idx: 1
#> → DW:   -> setting data source: myDS
#> → DW: module checksum updated:dfec3d5aa14c2716ccf367706931693f
#> → DW: setting name: Observations
#> → DW: module checksum updated:4d9fd3d913355669d14e0ac710b0b5dc
#> → DW:   -> filter
#> → DW: module checksum updated:2aba88838dee694a3d2813ed9f2837d2
#> → DW:   -> filter
#> → DW: module checksum updated:c181a352a2bd3592494d917b87057086
#> → DW:   -> mutate
#> → DW: module checksum updated:048df4e8afa9494121e72808981c842c
#> → DW: loading data view idx: 2
#> → DW:   -> setting data source: myDS
#> → DW: module checksum updated:048df4e8afa9494121e72808981c842c
#> → DW: setting name: PK 3mg SD IV
#> → DW: module checksum updated:c54c6fc20ff13fd14fbb61c786f65078
#> → DW:   -> filter
#> → DW: module checksum updated:496c1149f14ec1c48d4ddbc5aec72a72
#> → DW:   -> filter
#> → DW: module checksum updated:d65a6b3c16bea4262f7fb15a1d961512
#> → DW:   -> filter
#> → DW: module checksum updated:f90816b8f2ef9aeaad82e4a00880e536
#> → DW:   -> filter
#> → DW: module checksum updated:452fc9d9131592650a93b4b49de961d1
#> → DW: loading data view idx: 3
#> → DW:   -> setting data source: myDS
#> → DW: module checksum updated:452fc9d9131592650a93b4b49de961d1
#> → DW: setting name: PK 3mg SD IV (NCA)
#> → DW: module checksum updated:3b177ed09a80dfaf15c9f3dde8b9a8fb
#> → DW:   -> filter
#> → DW: module checksum updated:ce7e35b3bc2e1f53088ae7edd5b4345e
#> → DW:   -> filter
#> → DW: module checksum updated:64a5146d5e7070664557a7ff3d80f6f0
#> → DW:   -> filter
#> → DW: module checksum updated:2cf968d6e72262f9274ea0389f717e84
#> → DW: loading data view idx: 4
#> → DW:   -> setting data source: myDS
#> → DW: module checksum updated:2cf968d6e72262f9274ea0389f717e84
#> → DW: setting name: PKPD 3mg SD IV (NCA)
#> → DW: module checksum updated:67e9d6e6b2e085808be155613f8efe20
#> → DW:   -> filter
#> → DW: module checksum updated:a7a211de4eb91c91098a1f20e62bec73
#> → DW:   -> filter
#> → DW: module checksum updated:306f66790aca305ff1b715f34802610e
#> → DW:   -> filter
#> → DW: module checksum updated:306f66790aca305ff1b715f34802610e
#> → DW: module isgood: TRUE
#> → FG: including file
#> → FG:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → FG:   dest:   file.path("config","report.docx")
#> → FG: including file
#> → FG:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → FG:   dest:   file.path("config","report.pptx")
#> → FG: including file
#> → FG:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → FG:   dest:   file.path("config","report.yaml")
#> → FG: State initialized
#> → FG: module checksum updated:a1f3e31b6963f934887d0ab72c67bf75
#> → FG: loading figure idx: 1
#> → FG: setting name: 3 mg SD IV
#> → FG:  -> setting data source: DW_myDS_2
#> → FG:   -> line
#> → FG: module checksum updated:350d6020f3a67dd725491f8f40dbe70c
#> → FG:   -> label
#> → FG: module checksum updated:00474ae89e0388171d0d3002e76d2474
#> → FG: module isgood: TRUE
#> → # preload_complete is good: TRUE ------------------------------------------
session = sess_res$session
input   = sess_res$input

# This will create a populated FG state object:
state   = sess_res$state

# This sets the current active figure to Fig_1
state[["FG"]][["current_fig"]]  =  "Fig_1"

# If this is a paginated figure, and we can access a specific
pg_1 = FG_extract_page(state, 1)
#> → FG: unable to extract figure page, no facet elements found
#> → FG: figure id: Fig_1

# This will give you access to the current figure directly:
current_fig = FG_fetch_current_fig(state)

# For example this will set the key for that figure:
current_fig$key = "Individual profiles by cohort (multiple pages)"

# Once you're done you can put it back into the state:
state = FG_set_current_fig(state, current_fig)

# If you made any changes to the actual figure, this will
# force a rebuild of the current figure:
state = FG_build( state=state, del_row = NULL, cmd = NULL)
#> → FG: module checksum updated:fc3ff867d7ac2c6942669dff786195ff

# To create a new empty figure you can do this:
state = FG_new_fig(state)
#> → FG: module checksum updated:499fcde174a35c30049e49b1338988be
# }