ExportToReport: Graphical and Statistic Report Generation

View source: R/ExportToReport.R

ExportToReportR Documentation

Graphical and Statistic Report Generation

Description

Generates report from 'IFC_data' object.

Usage

ExportToReport(
  obj,
  selection,
  write_to,
  overwrite = FALSE,
  onepage = TRUE,
  color_mode = c("white", "black")[1],
  add_key = "panel",
  precision = c("light", "full")[1],
  trunc_labels = 38,
  trans = "asinh",
  bin,
  viewport = "ideas",
  backend = "lattice",
  display_progress = TRUE,
  ...
)

Arguments

obj

an 'IFC_data' object extracted with features extracted.

selection

indices of desired graphs. It can be provided as an integer vector or as a matrix.
In such case, the layout of the matrix will reflect the layout of the extracted graphs.
NA value will result in an empty place.
Otherwise, when 'selection' is provided as a vector not identical to seq_along(obj$graphs), 'onepage' parameter will be set to FALSE.
Note that indices are read from left to right, from top to bottom. Default is missing for extracting all graphs.

write_to

pattern used to export file(s). Placeholders, like c("%d/%s_fromR.pdf", "%d/%s_fromR.csv"), will be substituted:
-%d: with full path directory of 'obj$fileName'
-%p: with first parent directory of 'obj$fileName'
-%e: with extension of 'obj$fileName' (without leading .)
-%s: with shortname from 'obj$fileName' (i.e. basename without extension).
Exported file(s) extension(s) will be deduced from this pattern. Note that has to be a .pdf and/or .csv.

overwrite

whether to overwrite file or not. Default is FALSE. Note that if TRUE, it will overwrite file. In addition a warning message will be sent.

onepage

whether to generate a pdf with all graphs on one page or not. Default is TRUE.

color_mode

Whether to extract colors from obj in white or black mode. Default is "white".

add_key

whether to draw a "global" key under title or in the first "panel" or "both". Default is "panel".
Accepted values are either: FALSE, "panel", "global", "both" or c("panel", "global").
Note that it only applies when display is seen as overlaying populations.

precision

when graphs is a 2D scatter with population overlay, this argument controls amount of information displayed. Default is "light".
-"light", the default, will only display points of same coordinates that are amoung the other layers.
-"full" will display all the layers.

trunc_labels

maximum number of characters to display for labels. Default is 38.

trans

name of the transformation function for density graphs. If missing the default, the BasePop[[1]]$densitytrans, if any, will be retrieved, otherwise "asinh" will be used.

bin

default number of bin used for histogram. Default is missing.

viewport

Either "ideas", "data" or "max" defining limits used for the graph. Default is "ideas".
-"ideas" will use same limits as the one defined in ideas.
-"data" will use data to define limits.
-"max" will use data and regions drawn to define limits.

backend

backend used for drawing. Allowed are "lattice", "base", "raster". Default is "lattice".
-"lattice" is the original one used in IFC using lattice,
-"base" will produce the plot using base,
-"raster" uses "base" for plotting but 2D graphs points will be produced as rasterImage.
This has the main advantage of being super fast allowing for plotting a huge amount of points while generating smaller objects (in bytes). However, plot quality is impacted with "raster" method and resizing can lead to unpleasant looking.

display_progress

whether to display a progress bar. Default is TRUE.

...

other parameters to be passed.

Details

depending on 'write_to', function will create .pdf and/or .csv file(s) report with according to graphs found in 'obj'.
- csv file if created will contain "Min.","1st Qu.","Median","Mean","3rd Qu.","Max." for each graph found for x and y (if not histogram) for drawn populations and regions.
- pdf file if created will contain graphs and to a certain extent some stats "Min.", "Median", "Mean", "Max." (no more than 7 rows).
Note that only graphs will be exported (no images, features values, population stats, ...) in the same layout they were created and without sizing.

Value

It invisibly returns full path of exported .pdf and/or .csv file(s).

Examples

if(requireNamespace("IFCdata", quietly = TRUE)) {
  tmp <- tempdir(check = TRUE)
  ## use a daf file
  file_daf <- system.file("extdata", "example.daf", package = "IFCdata")
  daf <- ExtractFromDAF(fileName = file_daf, extract_images = FALSE,
                        extract_offsets = FALSE, display_progress = FALSE)
  L = length(daf$graphs)
  if(L > 0) { 
    ## randomly export at most 5 graphs from daf
    sel = sample(1:L, min(5, L))
    ExportToReport(obj = daf, selection = sel,
                   write_to = paste0(tmp, "\\test.pdf"), overwrite = TRUE)
  }
} else {
  message(sprintf('Please run `install.packages("IFCdata", repos = "%s", type = "source")` %s',
                  'https://gitdemont.github.io/IFCdata/',
                  'to install extra files required to run this example.'))
}

IFC documentation built on Sept. 14, 2023, 1:08 a.m.