
Genetic Diversity Module - Server Function
Source:R/modGeneticDiversity.R
modGeneticDiversityServer.RdAssembles the live breeding-group, genetic-value, and kinship reactive
inputs into the per-group heat-map statistics (via
getGeneticDiversityStats) and renders the red/yellow/green
heat map (via makeGeneticDiversityHeatmap). When breeding
groups have not been formed or the genetic value analysis has not been run,
the module shows guidance instead of an empty plot. When a formed group
holds an animal the loaded pedigree no longer has (a new file was read, or
the view was trimmed, after the groups were formed), the page says so in one
sentence and asks for the groups to be formed again; any other calculation
error is shown once, where the heat map would be. When any animal in the
groups has no birth date, a note under the heat map says how many, and how
many females among them the Production and Inbreeding columns counted (those
the pedigree lists as a dam) and left out.
Usage
modGeneticDiversityServer(
id,
groups,
pedigree,
geneticValues,
kinshipMatrix,
currentDate = Sys.Date()
)Arguments
- id
character vector of length 1. Module namespace identifier.
- groups
reactive returning a list of character vectors of animal IDs, one per breeding group (the
groupsreturned bymodBreedingGroupsServer). That list includes the trailing "Unused" element when candidates remain unplaced, and the heat map scores it as another group. If the list is named, the names are the heat map's row labels (the app passes the names that the Breeding Groups module returns asgroupLabels, so the last row reads "Unused animals"); an unnamed list gives "Group 1", "Group 2" and so on.- pedigree
reactive returning the quality-controlled pedigree data frame.
- geneticValues
reactive returning the genetic value report data frame (with
idandvaluecolumns).- kinshipMatrix
reactive returning a square kinship matrix (row and column names are animal IDs) covering every member of every group;
getGeneticDiversityStatsstops when a group member is missing from it. In the app this is the full-pedigree kinship matrix that Summary Statistics and Breeding Groups also use, so it covers every animal of the pedigree, not only the Genetic Value population.- currentDate
Date used to derive age and the production birth window. Defaults to
Sys.Date().
Value
A list with two reactive elements: stats, the per-group
metric data frame (or NULL when data are not ready), and
heatmap, the ggplot heat map (or NULL). Errors
raised inside getGeneticDiversityStats (a group member missing
from the kinship matrix) are not caught, so the reactives error instead
of returning NULL.
See also
Other Shiny modules:
modBreedingGroupsServer(),
modBreedingGroupsUI(),
modCrossCenterIdentityServer(),
modCrossCenterIdentityUI(),
modDeidentifiedExportServer(),
modDeidentifiedExportUI(),
modGeneticDiversityUI(),
modGeneticValueServer(),
modGeneticValueUI(),
modGvAndBgDescServer(),
modGvAndBgDescUI(),
modInputServer(),
modInputUI(),
modMarkerGeneticsServer(),
modMarkerGeneticsUI(),
modMatePairServer(),
modMatePairUI(),
modORIPReportingServer(),
modORIPReportingUI(),
modPedigreeServer(),
modPedigreeUI(),
modPotentialParentsServer(),
modPotentialParentsUI(),
modPyramidServer(),
modPyramidUI(),
modSnapshotTrendsServer(),
modSnapshotTrendsUI(),
modSummaryStatsServer(),
modSummaryStatsUI()