<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Genet.</journal-id>
<journal-title>Frontiers in Genetics</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Genet.</abbrev-journal-title>
<issn pub-type="epub">1664-8021</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1082782</article-id>
<article-id pub-id-type="doi">10.3389/fgene.2023.1082782</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Genetics</subject>
<subj-group>
<subject>Technology and Code</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>CLARITY: a Shiny app for interactive visualisation of the bovine physical-genetic map</article-title>
<alt-title alt-title-type="left-running-head">Melzer et al.</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fgene.2023.1082782">10.3389/fgene.2023.1082782</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Melzer</surname>
<given-names>Nina</given-names>
</name>
<uri xlink:href="https://loop.frontiersin.org/people/595953/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Qanbari</surname>
<given-names>Saber</given-names>
</name>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Ding</surname>
<given-names>Xi</given-names>
</name>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Wittenburg</surname>
<given-names>D&#xf6;rte</given-names>
</name>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/26293/overview"/>
</contrib>
</contrib-group>
<aff>
<institution>Research Institute for Farm Animal Biology (FBN)</institution>, <addr-line>Dummerstorf</addr-line>, <country>Germany</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/25754/overview">Joanna Szyda</ext-link>, Wroclaw University of Environmental and Life Sciences, Poland</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1886296/overview">Arvind Sonwane</ext-link>, Indian Council of Agricultural Research (ICAR), India</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/200612/overview">Nathan Olson</ext-link>, National Institute of Standards and Technology (NIST), United States</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: D&#xf6;rte Wittenburg, <email>wittenburg@fbn-dummerstorf.de</email>
</corresp>
</author-notes>
<pub-date pub-type="epub">
<day>30</day>
<month>05</month>
<year>2023</year>
</pub-date>
<pub-date pub-type="collection">
<year>2023</year>
</pub-date>
<volume>14</volume>
<elocation-id>1082782</elocation-id>
<history>
<date date-type="received">
<day>28</day>
<month>10</month>
<year>2022</year>
</date>
<date date-type="accepted">
<day>12</day>
<month>05</month>
<year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2023 Melzer, Qanbari, Ding and Wittenburg.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Melzer, Qanbari, Ding and Wittenburg</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>The arrangement of markers on the genome can be defined in either physical or linkage terms. While a physical map represents the inter-marker distances in base pairs, a genetic (or linkage) map pictures the recombination rate between pairs of markers. High-resolution genetic maps are key elements for genomic research, such as fine-mapping of quantitative trait loci, but they are also needed for creating and updating chromosome-level assemblies of whole-genome sequences. Based on published results on a large pedigree of German Holstein cattle and newly obtained results with German/Austrian Fleckvieh cattle, we aim at providing a platform that allows users to interactively explore the bovine genetic and physical map. We developed the R Shiny app CLARITY available online at <ext-link ext-link-type="uri" xlink:href="https://nmelzer.shinyapps.io/clarity">https://nmelzer.shinyapps.io/clarity</ext-link> and as R package at <ext-link ext-link-type="uri" xlink:href="https://github.com/nmelzer/CLARITY">https://github.com/nmelzer/CLARITY</ext-link> that provides access to the genetic maps built on the Illumina Bovine SNP50 genotyping array with markers ordered according to the physical coordinates of the most recent bovine genome assembly ARS-UCD1.2. The user is able to interconnect the physical and genetic map for a whole chromosome or a specific chromosomal region and can inspect a landscape of recombination hotspots. Moreover, the user can investigate which of the frequently used genetic-map functions locally fits best. We further provide auxiliary information about markers being putatively misplaced in the ARS-UCD1.2 release. The corresponding output tables and figures can be downloaded in various formats. By ongoing data integration from different breeds, the app also facilitates comparison of different genome features, providing a valuable tool for education and research purposes.</p>
</abstract>
<kwd-group>
<kwd>single nucleotide polymorphism</kwd>
<kwd>linkage</kwd>
<kwd>recombination rate</kwd>
<kwd>education</kwd>
<kwd>mapping function</kwd>
</kwd-group>
<contract-sponsor id="cn001">Bundesministerium f&#xfc;r Bildung und Forschung<named-content content-type="fundref-id">10.13039/501100002347</named-content>
</contract-sponsor>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Livestock Genomics</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>Genomic research involving gene mapping of economically important traits, population-specific genetic structure and evolutionary history relies heavily on genetic maps built on the extent of linkage disequilibrium (LD) between genomic markers (e.g., <xref ref-type="bibr" rid="B18">Georges et al., 2019</xref>; <xref ref-type="bibr" rid="B24">Johnsson and Jungnickel, 2021</xref>). For example, to what extent LD persists in a certain genomic region determines the number of markers required to fine-map a quantitative trait loci with succinct power and precision (for review see <xref ref-type="bibr" rid="B29">Qanbari, 2020</xref>). Moreover, genetic maps are valuable resources for comparative genomic analyses among breeds or species (e.g., <xref ref-type="bibr" rid="B13">Everts-van der Wind et al., 2005</xref>; <xref ref-type="bibr" rid="B41">Womack, 2005</xref>). Of utmost topical importance, however, is the contribution of genetic maps (also known as linkage maps) to measuring haplotype similarity in the context of genomic selection (<xref ref-type="bibr" rid="B27">Musa, 2021</xref>) and to chromosome-level assemblies of whole-genome sequences (e.g., <xref ref-type="bibr" rid="B11">De los R&#xed;os-P&#xe9;rez et al., 2020</xref>; <xref ref-type="bibr" rid="B34">Rosen et al., 2020</xref>).</p>
<p>Given the value of cattle in sustaining the world food security, the bovine genome is subject of vast amount of ongoing research. We recently updated the genetic map of German Holstein breed (<xref ref-type="bibr" rid="B31">Qanbari and Wittenburg, 2020</xref>) and compared it with physical coordinates of the most recent bovine reference genome assembly ARS-UCD1.2 (<xref ref-type="bibr" rid="B34">Rosen et al., 2020</xref>). As an extension to this resource, here we introduce a Shiny app CLARITY which facilitates interactive visualisation of the bovine genetic and physical map. CLARITY illustrates the details of male recombination across the bovine genome of selected breeds and suggests suitable genetic-map functions. In addition to published findings, results have been updated by taking most recent knowledge about putatively misplaced markers in the bovine genome assembly into account (<xref ref-type="bibr" rid="B30">Qanbari et al., 2022</xref>). Moreover, a linkage map for German/Austrian Fleckvieh cattle has been created. The CLARITY app can therefore serve as a toolkit for both educational and research purposes for the genome of bovine and related species.</p>
</sec>
<sec id="s2">
<title>2 Data preparation</title>
<p>The app provides access to linkage maps built based on the 50K genotypes of a large pedigree of German Holstein cattle (1,053 half-sib families which comprise 367,056 genotyped animals) as well as German/Austrian Fleckvieh cattle (298,850 genotyped animals pedigreed across 6,866 half-sib families) and based on estimates of recombination rate between intra-chromosomal marker pairs. In what follows, we briefly describe the workflow towards genetic coordinates as depicted in <xref ref-type="fig" rid="F1">Figure 1</xref> according to <xref ref-type="bibr" rid="B31">Qanbari and Wittenburg (2020)</xref>. As some of the steps require several days of computing or visual inspection, the workflow was executed once in advance; the app itself dynamically processes physical and genetic coordinates as well as pairwise recombination rates. If not stated otherwise, data processing was executed in R v4.1.3 (<xref ref-type="bibr" rid="B32">R Core Team, 2022</xref>).</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Data processing from raw genotypes to genetic-map functions. This workflow with grey coloured boxes excluded follows <xref ref-type="bibr" rid="B31">Qanbari and Wittenburg (2020)</xref> RR, recombination rate.</p>
</caption>
<graphic xlink:href="fgene-14-1082782-g001.tif"/>
</fig>
<p>
<statement content-type="step" id="Step_1">
<label>Step 1:</label>
<p>Genotype data were filtered for minor allele frequency &#x3e;1% and for Mendelian inconsistencies both on marker and individual level using PLINK v1.9 (<xref ref-type="bibr" rid="B44">Purcell et al., 2007</xref>) with recommended settings. Genotypes with a Mendelian inheritance error were set to &#x201c;NA&#x201d; and missing values were imputed using Eagle v2.4.1 program (<xref ref-type="bibr" rid="B43">Loh et al., 2016</xref>). Putatively misplaced markers, which have recently been reported (<xref ref-type="bibr" rid="B30">Qanbari et al., 2022</xref>), were discarded. Data passed on to Step 2 comprised 876 half-sib families with 366,565 progeny genotyped at 44,696 single nucleotide polymorphisms (SNPs) in Holstein and 1,577 half-sib families with 270,636 progeny genotyped at 40,003 SNPs in Fleckvieh.</p>
</statement>
</p>
<p>
<statement content-type="step" id="Step_2">
<label>Step 2:</label>
<p>Paternal recombination rates to build the genetic map were derived from two different methods, see <xref ref-type="fig" rid="F1">Figure 1</xref>. First, the <italic>deterministic approach</italic> developed by <xref ref-type="bibr" rid="B16">Ferdosi et al. (2014)</xref>, which is implemented in the R package hsphase v2.0.2, yielded estimates of recombination rate between adjacent markers. These estimates were later used to form the landscape of recombination hotspots. Genetic coordinates were estimated as cumulative sum of recombination rates between neighbouring markers. Second, the <italic>likelihood-based approach</italic>, as implemented in the R package hsrecombi v0.3.4 (<xref ref-type="bibr" rid="B40">Wittenburg, 2020</xref>), was applied to estimate recombination rates between all intra-chromosomal marker pairs. These estimates of recombination rate also enabled the identification of candidate misplaced markers in the current assembly release ARS-UCD1.2 (<xref ref-type="bibr" rid="B31">Qanbari and Wittenburg, 2020</xref>). Genetic coordinates were obtained with a smoothing approach, in which all recombination rates &#x3c; 0.05 between any intra-chromosomal marker pairs were taken into account.</p>
</statement>
</p>
<p>
<statement content-type="step" id="Step_3">
<label>Step 3:</label>
<p>As a novel contribution, the relationship between recombination rate and genetic distance between all intra-chromosomal marker pairs was investigated for a set of commonly used genetic-map functions (<xref ref-type="bibr" rid="B21">Haldane, 1919</xref>; <xref ref-type="bibr" rid="B33">Rao et al., 1977</xref>; <xref ref-type="bibr" rid="B15">Felsenstein, 1979</xref>; <xref ref-type="bibr" rid="B25">Liberman and Karlin, 1984</xref>). Given the estimates of recombination rate <inline-formula id="inf1">
<mml:math id="m1">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> between two markers <italic>i</italic> and <italic>j</italic> and its genetic distances <inline-formula id="inf2">
<mml:math id="m2">
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> derived in <xref ref-type="statement" rid="Step_1">Step 2</xref> (<xref ref-type="bibr" rid="B31">Qanbari and Wittenburg, 2020</xref>), a genetic-map function <inline-formula id="inf3">
<mml:math id="m3">
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x7c;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> was fitted to the data by solving the following minimisation problem in terms of the model parameter <italic>a</italic> (where <italic>p</italic> is the total number of markers per chromosome):<disp-formula id="equ1">
<mml:math id="m4">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3c;</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
<mml:mi>p</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x7c;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2192;</mml:mo>
<mml:mi>min</mml:mi>
<mml:mtext>&#x2002;</mml:mtext>
<mml:mi mathvariant="normal">s</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>a</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi mathvariant="double-struck">R</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>We solved this optimisation problem using the R function optim with &#x201c;Brent&#x201d; option allowing to specify restrictions on <italic>a</italic>. Rao&#x2019;s system of mapping function requires <inline-formula id="inf4">
<mml:math id="m5">
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>0,1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. Furthermore, instead of Haldane&#x2019;s original map function, we investigated a scaled version thereof, i.e.<disp-formula id="equ2">
<mml:math id="m6">
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x7c;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>a</mml:mi>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi mathvariant="normal">w</mml:mi>
<mml:mi mathvariant="normal">i</mml:mi>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mi mathvariant="normal">h</mml:mi>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>a</mml:mi>
<mml:mo>&#x3e;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>For the Binomial map function of <xref ref-type="bibr" rid="B25">Liberman and Karlin (1984)</xref>, we employed a grid search over <inline-formula id="inf5">
<mml:math id="m7">
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:mn>2,3,4,5</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> seeking the minimum squared deviation as described above. The fitted function leading to the least squared deviation constituted the &#x201c;best&#x201d; genetic-map function.</p>
</statement>
</p>
</sec>
<sec id="s3">
<title>3 Implementation</title>
<p>The CLARITY app is an R Shiny web GUI for various operating systems. It relies on several R packages to enable the outcome and visualisation functionalities. CLARITY was implemented in R v4.1.3 (<xref ref-type="bibr" rid="B32">R Core Team, 2022</xref>) with help of the R packages shiny v1.7.1 (<xref ref-type="bibr" rid="B9">Chang et al., 2021</xref>) and shinydashboard v0.7.2 (<xref ref-type="bibr" rid="B7">Chang and Borges Ribeiro, 2021</xref>) to create a dashboard. The graphical output was produced using the R packages ggplot2 v3.3.5 (<xref ref-type="bibr" rid="B39">Wickham, 2016</xref>), plotly v4.10.0 (<xref ref-type="bibr" rid="B36">Sievert, 2020</xref>) and ggVennDiagram v1.2.0 (<xref ref-type="bibr" rid="B17">Gao, 2021</xref>). To provide additional helpful features for the app, such as hiding or toogle of elements, the R packages shinyjs v2.1.0 (<xref ref-type="bibr" rid="B4">Attali, 2021</xref>) and shinycssloaders v1.0.0 (<xref ref-type="bibr" rid="B35">Sali and Attali, 2020</xref>) were incorporated. Tables were generated using the R package DT v0.22 (<xref ref-type="bibr" rid="B42">Xie et al., 2022</xref>). Further R packages were employed: cachem v1.0.6 (<xref ref-type="bibr" rid="B8">Chang, 2021</xref>), config v0.3.1 (<xref ref-type="bibr" rid="B3">Allaire, 2020</xref>), dplyr v1.0.10 (<xref ref-type="bibr" rid="B38">Wickham et al., 2022</xref>), gridExtra v2.3 (<xref ref-type="bibr" rid="B5">Auguie, 2017</xref>), htmltools v0.5.2 (<xref ref-type="bibr" rid="B10">Cheng et al., 2021</xref>), magrittr v2.0.3 (<xref ref-type="bibr" rid="B6">Bache and Wickham, 2022</xref>), metathis v1.1.2 (<xref ref-type="bibr" rid="B1">Aden-Buie, 2022</xref>), rlang v1.0.6 (<xref ref-type="bibr" rid="B23">Henry and Wickham, 2022a</xref>), sf v1.0.8 (<xref ref-type="bibr" rid="B28">Pebesma, 2018</xref>), RVenn v1.1.0 (<xref ref-type="bibr" rid="B2">Akyol, 2019</xref>) and purrr v0.3.5 (<xref ref-type="bibr" rid="B22">Henry and Wickham, 2022b</xref>). Eventually, an R package was built from the CLARITY app with use of the R package golem v0.3.2 (<xref ref-type="bibr" rid="B14">Fay et al., 2022</xref>), which offers default R files for creating the package as well as for deploying the app. The R package roxygen2 v7.1.2 (<xref ref-type="bibr" rid="B37">Wickham et al., 2021</xref>) was employed for package documentation. The processed data (i.e., recombination rates, genetic coordinates and parameters of genetic-map functions) were included as Rdata files in the folder &#x201c;extdata&#x201d;.</p>
<p>We optimized the app following recommendations for best practice with lighthouse (<xref ref-type="bibr" rid="B20">Google LLC, 2022</xref>). Figures were compressed with the tool Squoosh (<xref ref-type="bibr" rid="B19">Google Chrome Team, 2022</xref>), and caching of those figures requiring longer loading was enabled.</p>
<p>The structure of the app relies on modules, which eases a clear and concise organisation. The use of modules and corresponding interfaces to the main shiny ui and shiny server enables a straightforward maintenance of the software. Furthermore, since each module is an independent app with its own interface and server (<xref ref-type="bibr" rid="B12">Di Filippo et al., 2019</xref>), future modification and extension of the app are supported.</p>
</sec>
<sec id="s4">
<title>4 Realisation and features</title>
<p>The app has three sidebar menus: &#x201c;Information&#x201d;, &#x201c;Breed analysis&#x201d; and &#x201c;Breed comparison&#x201d; which are described in the following.</p>
<sec id="s4-1">
<title>4.1 Information</title>
<p>The first sidebar menu comprises two subitems: (1) general information about the project and contact options as well as (2) details of resources used. More specifically, subitem (2) contains a brief data description for each breed and outlines the methodology used for data analysis and parameter estimation. This subitem also provides auxiliary information about candidate markers identified as being putatively misplaced and/or residing in problematic regions of the ARS-UCD1.2 release (<xref ref-type="bibr" rid="B30">Qanbari et al., 2022</xref>, see also <xref ref-type="fig" rid="F2">Figure 2</xref>). These markers were recommended to be excluded from subsequent genomic analyses, such as phasing, imputation or genome-wide association studies.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>Screenshot of information about problematic regions and list of misplaced markers detected in Holstein cattle.</p>
</caption>
<graphic xlink:href="fgene-14-1082782-g002.tif"/>
</fig>
</sec>
<sec id="s4-2">
<title>4.2 Breed analysis</title>
<p>Under the second sidebar menu &#x201c;Breed analysis&#x201d;, all tabulated and graphical outcomes are presented for the available breeds. So far, options &#x201c;Holstein&#x201d; and &#x201c;Fleckvieh&#x201d; are available. The user can select a single chromosome or all chromosomes to interconnect the physical and linkage map. The results are divided into different tabs (implemented as separate modules) within the main panel: general information, genetic map, hotspot detection and genetic-map functions. Generally, outputs including tables and figures for a certain interval or for the entire data can also be downloaded for being locally stored. The properties of each tab are explained in more detail below.</p>
<sec id="s4-2-1">
<title>4.2.1 General information</title>
<p>For all chromosomes, summary statistics are provided about the number of markers considered, total number of recombination events, length of physical and both genetic maps (from <xref ref-type="statement" rid="Step_1">Step 2</xref>) in tabulated format. This table reduces if a single chromosome is selected (<xref ref-type="fig" rid="F3">Figure 3</xref>). An interactive graphical output displays physical <italic>versus</italic> genetic length per chromosome.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>Screenshot of general information on selected chromosome 2. The graphic displays the relationship between genetic and physical map length of all autosomes in Holstein cattle and highlights the selected chromosome.</p>
</caption>
<graphic xlink:href="fgene-14-1082782-g003.tif"/>
</fig>
</sec>
<sec id="s4-2-2">
<title>4.2.2 Genetic map</title>
<p>Physical and genetic map coordinates are listed for all markers in table or graphical format. If a specific chromosome is selected on the sidebar menu, the user can zoom into relevant chromosomal regions (<xref ref-type="fig" rid="F4">Figure 4</xref>). In each graphic, the genetic-map coordinates of the deterministic and likelihood-based approach appear. The graphical as well as the table output is adaptable to a user specified chromosome window. Selecting the option &#x201c;all chromosomes&#x201d; provides a static overview of 29 single graphics.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Screenshot of genetic map obtained with the likelihood-based and the deterministic approach on selected chromosome 2 in Holstein cattle. A table below (not shown) contains detailed information on each marker.</p>
</caption>
<graphic xlink:href="fgene-14-1082782-g004.tif"/>
</fig>
</sec>
<sec id="s4-2-3">
<title>4.2.3 Hotspot detection</title>
<p>The CLARITY app offers a landscape of putative recombination hotspots, in which marker intervals with an elevated recombination rate are colour-marked across the bovine genome or a selected chromosome (<xref ref-type="fig" rid="F5">Figure 5</xref>). The default threshold for the recombination rate is adopted from <xref ref-type="bibr" rid="B26">Ma et al. (2015)</xref> who defined a hotspot region with a recombination rate exceeding 2.5 standard deviations from the genome-wide average. The threshold is adjustable by the user. Changing the threshold accordingly affects the interactive graphic as well as the corresponding table listing all markers within the hotspot intervals.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Screenshot of recombination rate between adjacent markers on selected chromosome 2 in Holstein cattle. The coloured points are indicative for putative recombination hotspot intervals using the default threshold. The table below (not shown) provides detailed information on each marker in a hotspot interval.</p>
</caption>
<graphic xlink:href="fgene-14-1082782-g005.tif"/>
</fig>
</sec>
<sec id="s4-2-4">
<title>4.2.4 Genetic-map functions</title>
<p>The user can investigate the suitability of frequently used genetic-map functions and their overall and local fit to the observed recombination activity (<xref ref-type="fig" rid="F6">Figure 6</xref>). The parameter specifying a genetic-map function was estimated in <xref ref-type="statement" rid="Step_3">Step 3</xref> which took all intra-chromosomal marker pairs into account.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Screenshot of genetic-map functions and its overall fit on two selected chromosomes in Holstein cattle. The table provides details on estimated parameters of genetic-map functions and mean squared error of fitted curves.</p>
</caption>
<graphic xlink:href="fgene-14-1082782-g006.tif"/>
</fig>
<p>The fitted genetic-map functions are illustrated together with a reduced scatterplot of recombination rate <italic>versus</italic> genetic distance for computational reasons. Especially for chromosomes with <inline-formula id="inf6">
<mml:math id="m8">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x2265;</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>1,415 (i.e., &#x3e;1,000,000 marker pairs), the computing time is drastically increased retarding the visualisation. To ensure smooth processing, data were thinned based on the Euclidian distance among consecutive data points; a data point is a pair of recombination rate and genetic coordinate ordered according to a vectorised triangular matrix of SNP identifiers. In total, 200,000 data points with largest Euclidian distance were kept. This reduction of data did not impair the visual appearance of the scatter plot.</p>
</sec>
</sec>
<sec id="s4-3">
<title>4.3 Breed comparison</title>
<p>The third sidebar menu &#x201c;Breed comparison&#x201d; contains comparative analyses between breeds separated into the same tabs as described above. In addition, a Venn diagram summarises numbers of breed-specific and shared SNPs on a selected chromosome or over the entire autosome as well as in hotspot intervals. In the tabs &#x201c;genetic map&#x201d; and &#x201c;hotspot detection&#x201d;, the Venn diagram is interactively linked with the corresponding table&#x2014;this allows the user to retrieve particular information of a selected Venn set. The Venn diagram also dynamically adapts to a user defined range and threshold, respectively. Furthermore, since the fit of genetic-map functions might differ between breeds and chromosomes, a barplot displays counts of &#x201c;best&#x201d; genetic-map functions in each breed if the option &#x201c;all chromosomes&#x201d; is chosen.</p>
<p>Particularly, a comparison of Holstein and Fleckvieh cattle suggested similar recombination activity genome-wide. As an example, an inspection of hotspot intervals on chromosome 3 (<xref ref-type="fig" rid="F7">Figure 7</xref>) underlined regions of increased recombination rates at the chromosome ends that coincided well in both breeds. Furthermore, for each chromosome, genetic-map functions were almost overlapping. Small deviations of genetic-map functions were observed on chromosomes 5, 6, 9, 15, 16, and 18 with a slightly steeper curve in Fleckvieh.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Screenshot of recombination rate between adjacent markers on selected chromosome 3 in a comparison of Holstein and Fleckvieh cattle. The yellow triangles and orange rectangles highlight markers in hotspot intervals of Holstein and Fleckvieh, respectively.</p>
</caption>
<graphic xlink:href="fgene-14-1082782-g007.tif"/>
</fig>
</sec>
</sec>
<sec id="s5">
<title>5 Discussion and outlook</title>
<p>The CLARITY app provides an environment to interactively explore the physical and genetic map in selected cattle breeds. Importantly, processing of genotype data and presenting results via Shiny app rely on the current bovine genome assembly ARS-UCD1.2. In case of new assembly releases, <xref ref-type="statement" rid="Step_1">Steps 1</xref>&#x2013;<xref ref-type="statement" rid="Step_3">3</xref> need to be re-run and an app update becomes necessary. (Especially, both approaches in <xref ref-type="statement" rid="Step_2">Step 2</xref> depend on the ordering of markers for inferring phases of sire genotypes and recombination events.) Though a pipeline for <xref ref-type="statement" rid="Step_1">Steps 1</xref>&#x2013;<xref ref-type="statement" rid="Step_3">3</xref> is available at github, and it could theoretically be part of the Shiny app, we do not recommend its inclusion for computational matters as mentioned in <xref ref-type="sec" rid="s2">Section 2</xref>.</p>
<p>Further work on the integration of data from other breeds (beef, dairy, dual-purpose) is underway and will facilitate complex comparative analyses of map features (e.g., hotspot intervals and assembly flaws) in different genomes. Our Shiny app will be extended accordingly, certainly increasing its value for educational and research purposes.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s6">
<title>Data availability statement</title>
<p>CLARITY is a publicly available Shiny app that can be accessed via web interface at <ext-link ext-link-type="uri" xlink:href="https://nmelzer.shinyapps.io/clarity">https://nmelzer.shinyapps.io/clarity</ext-link>. The corresponding R package CLARITY v1.0.1 including the source code and processed data can be downloaded from <ext-link ext-link-type="uri" xlink:href="https://github.com/nmelzer/CLARITY">https://github.com/nmelzer/CLARITY</ext-link> under the terms of GPL (&#x2265; 2.0). A pipeline for processing genotype data and an R script for composing the app input data are available at <ext-link ext-link-type="uri" xlink:href="https://github.com/wittenburg/hsrecombi">https://github.com/wittenburg/hsrecombi</ext-link>. Restrictions apply to the availability of the original data supporting the findings of this study due to thirdparty ownership. Genotype data are available from the Association for Bioeconomy Research (FBF, Bonn) and ZuchtData (Vienna) upon agreement. Requests to access the original datasets should be directed to <ext-link ext-link-type="uri" xlink:href="www.fbf-forschung.de/kontakt.html">www.fbf-forschung.de/kontakt.html</ext-link>; <ext-link ext-link-type="uri" xlink:href="www.rinderzucht.at/zuchtdata/team.html">www.rinderzucht.at/zuchtdata/team.html</ext-link>.</p>
</sec>
<sec id="s7">
<title>Author contributions</title>
<p>NM developed the Shiny app package. SQ, XD, and DW analysed the data. NM, SQ, and DW wrote the manuscript and contributed to the online documentation of the R Shiny app. DW conceived the project. All authors contributed to the article and approved the final version.</p>
</sec>
<sec id="s8">
<title>Funding</title>
<p>This study was supported by the grant from the German Federal Ministry of Education and Research (BMBF, FKZ 031L0166 CompLS). The publication of this article was funded by the Open Access Fund of the FBN.</p>
</sec>
<ack>
<p>We gratefully acknowledge the support of the Association for Bioeconomy Research (FBF, Bonn, Germany) as representative of German Holstein cattle breeders for participating in this project and the German Evaluation Center (VIT, Verden, Germany) for composing the Holstein data. We thank ZuchtData (Vienna, Austria) for providing the German/Austrian Fleckvieh data.</p>
</ack>
<sec sec-type="COI-statement" id="s9">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s10">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Aden-Buie</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Metathis: HTML metadata tags for &#x27;R markdown&#x27; and &#x27;shiny&#x27;</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=metathis">https://CRAN.R-project.org/package&#x3d;metathis</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B2">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Akyol</surname>
<given-names>T. Y.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>RVenn: Set operations for many sets</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=RVenn">https://CRAN.R-project.org/package&#x3d;RVenn</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B3">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Allaire</surname>
<given-names>J. J.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>config: Manage environment specific configuration values</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=config">https://CRAN.R-project.org/package&#x3d;config</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B4">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Attali</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>shinyjs: Easily improve the user experience of your shiny apps in seconds</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=shinyjs">https://CRAN.R-project.org/package&#x3d;shinyjs</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B5">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Auguie</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>gridExtra: Miscellaneous functions for "grid" graphics</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=gridExtra">https://CRAN.R-project.org/package&#x3d;gridExtra</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B6">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Bache</surname>
<given-names>S. M.</given-names>
</name>
<name>
<surname>Wickham</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Magrittr: A forward-pipe operator for R</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=magrittr">https://CRAN.R-project.org/package&#x3d;magrittr</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B7">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Chang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Borges Ribeiro</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>shinydashboard: Create dashboards with &#x27;shiny&#x27;</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=shinydashboard">https://CRAN.R-project.org/package&#x3d;shinydashboard</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B8">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Chang</surname>
<given-names>W.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>cachem: Cache R objects with automatic pruning</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=cachem">https://CRAN.R-project.org/package&#x3d;cachem</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B9">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Chang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Cheng</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Allaire</surname>
<given-names>J. J.</given-names>
</name>
<name>
<surname>Sievert</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Schloerke</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Xie</surname>
<given-names>Y.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>shiny: Web application framework for R</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=shiny">https://CRAN.R-project.org/package&#x3d;shiny</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B10">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Cheng</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Sievert</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Schloerke</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Chang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Xie</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Allen</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>htmltools: Tools for HTML</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=htmltools">https://CRAN.R-project.org/package&#x3d;htmltools</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>De los R&#xed;os-P&#xe9;rez</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Verleih</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Rebl</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Brunner</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Nguinkal</surname>
<given-names>J. A.</given-names>
</name>
<name>
<surname>Klosa</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2020</year>). <article-title>An ultra-high density SNP-based linkage map for enhancing the pikeperch (<italic>Sander lucioperca</italic>) genome assembly to chromosome-scale</article-title>. <source>Sci. Rep.</source> <volume>10</volume>, <fpage>22335</fpage>. <pub-id pub-id-type="doi">10.1038/s41598-020-79358-z</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Di Filippo</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Righelli</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Gagliardi</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Matarazzo</surname>
<given-names>M. R.</given-names>
</name>
<name>
<surname>Angelini</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>HiCeekR: A novel shiny app for hi-C data analysis</article-title>. <source>Front. Genet.</source> <volume>10</volume>, <fpage>1079</fpage>. <pub-id pub-id-type="doi">10.3389/fgene.2019.01079</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Everts-van der Wind</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Larkin</surname>
<given-names>D. M.</given-names>
</name>
<name>
<surname>Green</surname>
<given-names>C. A.</given-names>
</name>
<name>
<surname>Elliott</surname>
<given-names>J. S.</given-names>
</name>
<name>
<surname>Olmstead</surname>
<given-names>C. A.</given-names>
</name>
<name>
<surname>Chiu</surname>
<given-names>R.</given-names>
</name>
<etal/>
</person-group> (<year>2005</year>). <article-title>A high-resolution whole-genome cattle&#x2013;human comparative map reveals details of mammalian chromosome evolution</article-title>. <source>PNAS</source> <volume>102</volume>, <fpage>18526</fpage>&#x2013;<lpage>18531</lpage>. <pub-id pub-id-type="doi">10.1073/pnas.0509285102</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Fay</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Guyader</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Rochette</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Girard</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Golem: A framework for robust shiny applications</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=golem">https://CRAN.R-project.org/package&#x3d;golem</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Felsenstein</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>1979</year>). <article-title>A mathematically tractable family of genetic mapping functions with different amounts of interference</article-title>. <source>Genetics</source> <volume>91</volume>, <fpage>769</fpage>&#x2013;<lpage>775</lpage>. <pub-id pub-id-type="doi">10.1093/genetics/91.4.769</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ferdosi</surname>
<given-names>M. H.</given-names>
</name>
<name>
<surname>Kinghorn</surname>
<given-names>B. P.</given-names>
</name>
<name>
<surname>van der Werf</surname>
<given-names>J. H.</given-names>
</name>
<name>
<surname>Lee</surname>
<given-names>S. H.</given-names>
</name>
<name>
<surname>Gondro</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>hsphase: an R package for pedigree reconstruction, detection of recombination events, phasing and imputation of half-sib family groups</article-title>. <source>BMC Bioinf</source> <volume>15</volume>, <fpage>172</fpage>. <pub-id pub-id-type="doi">10.1186/1471-2105-15-172</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Gao</surname>
<given-names>C.-H.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>ggVenndiagram: A &#x27;ggplot2&#x27; implement of Venn diagram</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=ggVennDiagram">https://CRAN.R-project.org/package&#x3d;ggVennDiagram</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Georges</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Charlier</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Hayes</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Harnessing genomic information for livestock improvement</article-title>. <source>Nat. Rev. Genet.</source> <volume>20</volume>, <fpage>135</fpage>&#x2013;<lpage>156</lpage>. <pub-id pub-id-type="doi">10.1038/s41576-018-0082-2</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="web">
<collab>Google Chrome Team</collab> (<year>2022</year>). <article-title>Squoosh!</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://github.com/GoogleChromeLabs/squoosh">https://github.com/GoogleChromeLabs/squoosh</ext-link> (Accessed June 21, 2022)</comment>. </citation>
</ref>
<ref id="B20">
<citation citation-type="web">
<collab>Google LLC</collab> (<year>2022</year>). <article-title>Lighthouse</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://github.com/GoogleChrome/lighthouse">https://github.com/GoogleChrome/lighthouse</ext-link> (Accessed June 21, 2022)</comment>.</citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Haldane</surname>
<given-names>J. B. S.</given-names>
</name>
</person-group> (<year>1919</year>). <article-title>The combination of linkage values and the calculation of distances between the loci of linked factors</article-title>. <source>J. Genet.</source> <volume>8</volume>, <fpage>299</fpage>&#x2013;<lpage>309</lpage>. </citation>
</ref>
<ref id="B22">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Henry</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Wickham</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2022b</year>). <article-title>purrr: Functional programming tools</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=purrr">https://CRAN.R-project.org/package&#x3d;purrr</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B23">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Henry</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Wickham</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2022a</year>). <article-title>rlang: Functions for base types and Core R and &#x27;tidyverse&#x27; features</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=rlang">https://CRAN.R-project.org/package&#x3d;rlang</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Johnsson</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Jungnickel</surname>
<given-names>M. K.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Evidence for and localization of proposed causative variants in cattle and pig genomes</article-title>. <source>Genet. Sel. Evol.</source> <volume>53</volume>, <fpage>67</fpage>. <pub-id pub-id-type="doi">10.1186/s12711-021-00662-x</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liberman</surname>
<given-names>U.</given-names>
</name>
<name>
<surname>Karlin</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>1984</year>). <article-title>Theoretical models of genetic map functions</article-title>. <source>Theor. Popul. Biol.</source> <volume>25</volume>, <fpage>331</fpage>&#x2013;<lpage>346</lpage>. <pub-id pub-id-type="doi">10.1016/0040-5809(84)90013-3</pub-id>
</citation>
</ref>
<ref id="B43">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Loh</surname>
<given-names>P.-R.</given-names>
</name>
<name>
<surname>Danecek</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Palamara</surname>
<given-names>P. F.</given-names>
</name>
<name>
<surname>Fuchsberger</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Reshef</surname>
<given-names>Y. A.</given-names>
</name>
<name>
<surname>Finucane</surname>
<given-names>H. K.</given-names>
</name>
<etal/>
</person-group> (<year>2016</year>). <article-title>Reference-based phasing using the haplotype reference consortium panel</article-title>. <source>Nat. Genet.</source> <volume>48</volume>, <fpage>1443</fpage>&#x2013;<lpage>1448</lpage>.</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ma</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>O&#x2019;Connell</surname>
<given-names>J. R.</given-names>
</name>
<name>
<surname>VanRaden</surname>
<given-names>P. M.</given-names>
</name>
<name>
<surname>Shen</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Padhi</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>C.</given-names>
</name>
<etal/>
</person-group> (<year>2015</year>). <article-title>Cattle sex-specific recombination and genetic control from a large pedigree analysis</article-title>. <source>PLoS Genet.</source> <volume>11</volume>, <fpage>e1005387</fpage>. <pub-id pub-id-type="doi">10.1371/journal.pgen.1005387</pub-id>
</citation>
</ref>
<ref id="B27">
<citation citation-type="thesis">
<person-group person-group-type="author">
<name>
<surname>Musa</surname>
<given-names>A. A.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>A similarity matrix and its application in genomic selection for hedging haplotype diversity (Dissertation)</article-title>&#x201d; (<publisher-loc>Germany</publisher-loc>: <publisher-name>University Kiel</publisher-name>).</citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Pebesma</surname>
<given-names>E.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Simple features for R: Standardized support for spatial vector data</article-title>. <source>R J.</source> <volume>10</volume> (<issue>1</issue>), <fpage>439</fpage>&#x2013;<lpage>446</lpage>. <pub-id pub-id-type="doi">10.32614/RJ-2018-009</pub-id>
</citation>
</ref>
<ref id="B44">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Purcell</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Neale</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Todd-Brown</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Thomas</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Ferreira</surname>
<given-names>M. A. R.</given-names>
</name>
<name>
<surname>Bender</surname>
<given-names>D.</given-names>
</name>
<etal/>
</person-group> (<year>2007</year>). <article-title>PLINK: a tool set for whole-genome association and population-based linkage analyses</article-title>. <source>Am. J. Hum. Genet.</source> <volume>81</volume>, <fpage>559</fpage>&#x2013;<lpage>575</lpage>.</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Qanbari</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>On the extent of linkage disequilibrium in the genome of farm animals</article-title>. <source>Front. Genet.</source> <volume>10</volume>, <fpage>1304</fpage>. <pub-id pub-id-type="doi">10.3389/fgene.2019.01304</pub-id>
</citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Qanbari</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Schnabel</surname>
<given-names>R. D.</given-names>
</name>
<name>
<surname>Wittenburg</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Evidence of rare misassemblies in the bovine reference genome revealed by population genetic metrics</article-title>. <source>Anim. Genet.</source> <volume>53</volume>, <fpage>498</fpage>&#x2013;<lpage>505</lpage>. <pub-id pub-id-type="doi">10.1111/age.13205</pub-id>
</citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Qanbari</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Wittenburg</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Male recombination map of the autosomal genome in German Holstein</article-title>. <source>Genet. Sel. Evol.</source> <volume>52</volume>, <fpage>73</fpage>. <pub-id pub-id-type="doi">10.1186/s12711-020-00593-z</pub-id>
</citation>
</ref>
<ref id="B32">
<citation citation-type="book">
<collab>R Core Team</collab> (<year>2022</year>). <source>R: A language and environment for statistical computing</source>. <publisher-loc>Vienna, Austria</publisher-loc>: <publisher-name>R Foundation for Statistical Computing</publisher-name>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://www.R-project.org">https://www.R-project.org</ext-link>
</comment>.</citation>
</ref>
<ref id="B33">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rao</surname>
<given-names>D. C.</given-names>
</name>
<name>
<surname>Morton</surname>
<given-names>N. E.</given-names>
</name>
<name>
<surname>Lindsten</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Hult&#xe9;n</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Yee</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>1977</year>). <article-title>A mapping function for man</article-title>. <source>Hum. Hered.</source> <volume>27</volume>, <fpage>99</fpage>&#x2013;<lpage>104</lpage>. <pub-id pub-id-type="doi">10.1159/000152856</pub-id>
</citation>
</ref>
<ref id="B34">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rosen</surname>
<given-names>B. D.</given-names>
</name>
<name>
<surname>Bickhart</surname>
<given-names>D. M.</given-names>
</name>
<name>
<surname>Schnabel</surname>
<given-names>R. D.</given-names>
</name>
<name>
<surname>Koren</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Elsik</surname>
<given-names>C. G.</given-names>
</name>
<name>
<surname>Tseng</surname>
<given-names>E.</given-names>
</name>
<etal/>
</person-group> (<year>2020</year>). <article-title>De novo assembly of the cattle reference genome with single-molecule sequencing</article-title>. <source>GigaScience</source> <volume>9</volume>, <fpage>giaa021</fpage>. <pub-id pub-id-type="doi">10.1093/gigascience/giaa021</pub-id>
</citation>
</ref>
<ref id="B35">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Sali</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Attali</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>shinycssloaders: Add loading animations to a &#x27;shiny&#x27; output while it&#x27;s recalculating</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=shinycssloaders">https://CRAN.R-project.org/package&#x3d;shinycssloaders</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B36">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Sievert</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2020</year>). <source>Interactive web-based data visualisation with R, plotly, and shiny</source>. <publisher-loc>Boca Raton</publisher-loc>: <publisher-name>Chapman and Hall/CRC</publisher-name>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://plotly-r.com">https://plotly-r.com</ext-link>
</comment>.</citation>
</ref>
<ref id="B37">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Wickham</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Danenberg</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Cs&#xe1;rdi</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Eugster</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>roxygen2: In-Line Documentation for R</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=roxygen2">https://CRAN.R-project.org/package&#x3d;roxygen2</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B38">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Wickham</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Fran&#xe7;ois</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Henry</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>M&#xfc;ller</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>dplyr: A grammar of data manipulation</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=dplyr">https://CRAN.R-project.org/package&#x3d;dplyr</ext-link> (Accessed October 20, 2022)</comment>
</citation>
</ref>
<ref id="B39">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Wickham</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2016</year>). <source>ggplot2: Elegant graphics for data analysis</source>. <publisher-loc>New York, NY</publisher-loc>: <publisher-name>Springer</publisher-name>.</citation>
</ref>
<ref id="B40">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Wittenburg</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>hsrecombi: Estimation of recombination rate and maternal LD in half-sibs</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://cran.r-project.org/package=hsrecombi">https://cran.r-project.org/package&#x3d;hsrecombi</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
<ref id="B41">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Womack</surname>
<given-names>J. E.</given-names>
</name>
</person-group> (<year>2005</year>). <article-title>Advances in livestock genomics: Opening the barn door</article-title>. <source>Genome Res.</source> <volume>15</volume>, <fpage>1699</fpage>&#x2013;<lpage>1705</lpage>. <pub-id pub-id-type="doi">10.1101/gr.3809105</pub-id>
</citation>
</ref>
<ref id="B42">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Xie</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Cheng</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Tan</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>DT: A wrapper of the JavaScript library &#x27;DataTables&#x27;</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://CRAN.R-project.org/package=DT">https://CRAN.R-project.org/package&#x3d;DT</ext-link> (Accessed October 20, 2022)</comment>.</citation>
</ref>
</ref-list>
</back>
</article>