idiogramFISH

knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "man/figures/README-",
  out.width = "70%"
)
library(knitr)
img1_path <- "man/figures/logo.png"
if(file.exists(img1_path)) {
cat(paste0("<img src=",img1_path," align=\"right\" width=\"12%\" hspace=\"50\">") )
}

Shiny App. Idiograms with Marks and Karyotype Indices







 badge_devel_gitlab<-function(pkg, color){
    v <- rvcheck:::check_github_gitlab(pkg, "gitlab")$latest_version
    url <- paste0("https://gitlab.com/", pkg)
    badger::badge_custom("devel version", v, color, url)
}

``` {r, echo=F, message=FALSE, fig.show = "hold", fig.align = "default", results="asis"}

library(badger)

if (requireNamespace("RCurl", quietly = TRUE) ) { cranversion <- "https://www.r-pkg.org/badges/version/idiogramFISH" cranversion_cont <- tryCatch(suppressWarnings(RCurl::getURLContent(cranversion) ), error=function(e) NA )

crandownloads<-"https://cranlogs.r-pkg.org/badges/grand-total/idiogramFISH?color=orange" crandownloads_cont <- tryCatch(suppressWarnings(RCurl::getURLContent(crandownloads) ), error=function(e) NA )

newdownlink<-tryCatch(suppressWarnings(badger::badge_custom("CRAN", "downloads","green") ), error=function(e) NA ) if(!is.na(newdownlink)){ svgnewdownlink<-gsub("\[|\]|!|\(|\)","", newdownlink) realdo_cont <- tryCatch(suppressWarnings(RCurl::getURLContent(svgnewdownlink) ), error=function(e) NA ) }

doibadge <- "https://zenodo.org/badge/DOI/10.5281/zenodo.3579417.svg" doibadge_cont <- tryCatch(suppressWarnings(RCurl::getURLContent(doibadge) ), error=function(e) NA )

if (!is.na(cranversion_cont)) { cranversion_contFile <- "man/figures/cranversion.svg" writeLines(cranversion_cont, con = cranversion_contFile) cat(paste0("https://cran.r-project.org/web/packages/idiogramFISH/,")" ) ) }

# if (!is.na(crandownloads_cont)){

if (!is.na(realdo_cont)){
  realdo_contFile <- "man/figures/realdownloads.svg"
  writeLines(realdo_cont, con = realdo_contFile)
                        # message                                              # link
  cat(paste0("&nbsp;[![downloads](",knitr::include_graphics(realdo_contFile),")](https://ferroao.gitlab.io/idiogramfishhelppages/downloads.png)" ) )
}

  if (!is.na(doibadge_cont)){
    cranCranddoi<-TRUE
  doibadge_contFile <- "man/figures/doibadge.svg"
  writeLines(doibadge_cont, con = doibadge_contFile)
  # doibadge_contFile <- normalizePath(doibadge_contFile)

   cat(paste0("&nbsp;[![10.5281/zenodo.3579417](",knitr::include_graphics(doibadge_contFile),")](https://doi.org/10.5281/zenodo.3579417)" ) )
  } # doi cont

} # rcurl

``` {r, echo=F, message=FALSE, fig.show = "hold", fig.align = "default", results="asis"}
#`r badge_devel_gitlab("ferroao/idiogramFISH", color="green")`
if (requireNamespace("RCurl", quietly = TRUE)  ) {
v<-sub("Version: ","",readLines("DESCRIPTION")[3])
link<-tryCatch(suppressWarnings(badger::badge_custom("devel version", v, "cornflowerblue","?logo=gitlab") ), error=function(e) NA )
if(!is.na(link)){
svglink<-gsub("\\[|\\]|!|\\(|\\)","", link)
gitbadge_cont <- tryCatch(suppressWarnings(RCurl::getURLContent(svglink) ), error=function(e) NA )
if (!is.na(gitbadge_cont)){
gitbadge_contFile <- "man/figures/gitbadge.svg"
writeLines(gitbadge_cont, con = gitbadge_contFile)
cat(paste0("&nbsp;![gitlab.com/ferroao/idiogramFISH](",knitr::include_graphics(gitbadge_contFile)," )" ) )
}
}
} # rcurl

``` {r, echo=F, message=FALSE, fig.show = "hold", fig.align = "default", results="asis"} cat("



") cat("Buy Me a Coffee at ko-fi.com")

<!-- badges: end -->

The left side menu of the shiny app consists of three pages with several tabs:

* Examples (presets)
    + Load example
    + Upload presets

* Nucleotides 
    + Search

* data.frame (input)
    + Chr. data data.frame
    + Mark Pos. data d.f.
    + Marks' Style
    + Notes

* Parameters & Plot
    + Parameters (plot and download preset)
    + Log
    + code (download data.frames and code)

* stats (output)
    + Indices
    + Marks

* About

The goal of idiogramFISH functions or shiny-app is to plot karyotypes, plasmids and circular chr. having a set of data.frames for chromosome data and optionally marks' data [@Roa2021]. Karyotypes can also be plotted in concentric circles.<br>
    <br>It is possible to calculate also chromosome and karyotype indexes [@Watanabe1999;@Zarco1986new] and classify chromosome morphology in the categories of Levan [-@Levan1964], and [Guerra](https://ferroao.gitlab.io/guerra1986/Guerra1986.pdf) [-@Guerra1986d].<br>
    <br>Six styles of marks are available: square (squareLeft), dots, cM (cMLeft), cenStyle, upArrow (downArrow), exProtein (inProtein) (column `style` in `dfMarkColor` data.frame); its legend (label) (parameter `legend`) can be drawn inline or to the right of karyotypes. Three styles of centromere are available: rounded, triangle and inProtein (`cenFormat` parameter). Chromosome regions (column `chrRegion` in `dfMarkPos` data.frame) for monocentrics are `p`, `q`, `cen`, `pcen`, `qcen`. The last three cannot accommodate most mark styles, but can be colored. The region `w` can be used both in monocentrics and holocentrics.

IdiogramFISH was written in R [@R-base] and also uses crayon [@R-crayon], tidyr [@R-tidyr], plyr [@plyr2011] and dplyr packages [@R-dplyr]. Documentation was written with R-packages roxygen2 [@R-roxygen2], usethis [@R-usethis], bookdown [@bookdown2016], knitr [@Xie2015], pkgdown [@R-pkgdown], Rmarkdown [@rmarkdown2018], rvcheck [@R-rvcheck], badger [@R-badger], kableExtra [@R-kableExtra], rmdformats [@R-rmdformats] and RCurl [@R-RCurl]. For some vignette figures, packages rentrez [@rentrez2017], phytools [@phytools2012], ggtree [@ggtree2018], ggplot2 [@ggplot22016] and ggpubr [@R-ggpubr] were used.

In addition, the shiny app `runBoard()` uses shiny [@R-shiny], shinydashboard [@R-shinydashboard], rhandsontable [@R-rhandsontable], gtools [@R-gtools] and rclipboard [@R-rclipboard].

<!-- badger -->

## Releases

[News](https://gitlab.com/ferroao/idiogramFISH/blob/master/NEWS.md)  

[CRAN archive](https://cran.r-project.org/src/contrib/Archive/idiogramFISH/)

[Download history](https://ferroao.gitlab.io/idiogramfishhelppages/downloads.png)

## Need help?

#### Manual in Bookdown style

``` {r, echo=F, message=FALSE, fig.show = "hold", fig.align = "default", results="asis"}
if (requireNamespace("RCurl", quietly = TRUE)  ) {
# version of manual
# v <- tryCatch(suppressWarnings(rvcheck:::check_github_gitlab("ferroao/idiogramFISH", "gitlab")$latest_version), error=function(e) NA )
#cran version
v<-tryCatch(suppressWarnings(rvcheck::check_cran("idiogramFISH")$latest_version), error=function(e) NA )

pkg<-"idiogramFISH"
link<-tryCatch(suppressWarnings(badger::badge_custom("bookdown", paste(pkg,v), "orange") ), error=function(e) NA )
  if(!is.na(link)){
  svglink<-gsub("\\[|\\]|!|\\(|\\)","", link)
  manual_cont <- tryCatch(suppressWarnings(RCurl::getURLContent(svglink) ), error=function(e) NA )
    if (!is.na(manual_cont)){
    manual_contFile <- "man/figures/cranmanualbookdown.svg"
    writeLines(manual_cont, con = manual_contFile)
    cat(paste0("&nbsp;[![https://ferroao.gitlab.io/manualidiogramfish](",knitr::include_graphics(manual_contFile),")](https://ferroao.gitlab.io/manualidiogramfish/)" ) )
    } else {
    cat(paste0("&nbsp;[https://ferroao.gitlab.io/manualidiogramfish](https://ferroao.gitlab.io/manualidiogramfish/){target='_blank'}" ) )
    }
  }
} else {
    cat(paste0("&nbsp;[https://ferroao.gitlab.io/manualidiogramfish](https://ferroao.gitlab.io/manualidiogramfish/){target='_blank'}" ) )
} 

Documentation in Pkgdown style

``` {r, echo=F, message=FALSE, fig.show = "hold", fig.align = "default", results="asis"} if (requireNamespace("RCurl", quietly = TRUE) ) {

version of manual

v<-sub("Version: ","",readLines("DESCRIPTION")[3])

pkg<-"idiogramFISH" pkglink<-tryCatch(suppressWarnings(badger::badge_custom("pkgdown", paste(pkg,v), "cornflowerblue") ), error=function(e) NA ) if(!is.na(pkglink)){ pkgsvglink<-gsub("\[|\]|!|\(|\)","", pkglink) develpkgmanual_cont <- tryCatch(suppressWarnings(RCurl::getURLContent(pkgsvglink) ), error=function(e) NA ) if (!is.na(develpkgmanual_cont)){ pkgdownmanual_contFile <- "man/figures/pkgdownver.svg" writeLines(develpkgmanual_cont, con = pkgdownmanual_contFile) cat(paste0(" https://ferroao.gitlab.io/idiogramFISH," )" ) ) } else { cat(paste0(" https://ferroao.gitlab.io/idiogramFISH{target='_blank'}" ) ) } } } else { cat(paste0(" https://ferroao.gitlab.io/idiogramFISH{target='_blank'}" ) ) }

#### Vignettes: {-}

Online:

``` {r, echo=F, message=FALSE, fig.show = "hold", fig.align = "default", results="asis"}
if (requireNamespace("RCurl", quietly = TRUE)  ) {
# version of manual
v<-sub("Version: ","",readLines("DESCRIPTION")[3])

pkg<-"idiogramFISH"
link<-tryCatch(suppressWarnings(badger::badge_custom("vignettes", paste(pkg,v), "cornflowerblue") ), error=function(e) NA )
  if(!is.na(link)){
  svglink<-gsub("\\[|\\]|!|\\(|\\)","", link)
  develmanual_cont <- tryCatch(suppressWarnings(RCurl::getURLContent(svglink) ), error=function(e) NA )
    if (!is.na(develmanual_cont)){
    vignettemanual_contFile <- "man/figures/develmanualvignette.svg"
    writeLines(develmanual_cont, con = vignettemanual_contFile)
    cat(paste0("&nbsp;[![https://ferroao.gitlab.io/idiogramfishhelppages](",knitr::include_graphics(vignettemanual_contFile),")](https://ferroao.gitlab.io/idiogramfishhelppages)" ) )
    } else {
    cat(paste0("&nbsp;[https://ferroao.gitlab.io/idiogramfishhelppages](https://ferroao.gitlab.io/idiogramfishhelppages){target='_blank'}
" ) )
    }
  }
} else {
    cat(paste0("&nbsp;[https://ferroao.gitlab.io/idiogramfishhelppages](https://ferroao.gitlab.io/idiogramfishhelppages){target='_blank'}
" ) )
} 

Launch vignettes from R for the installed version:

library(idiogramFISH)
packageVersion("idiogramFISH")
browseVignettes("idiogramFISH")

Citation

print(citation("idiogramFISH"),bibtex=FALSE)

To write citation to file:

sink("idiogramFISH.bib")
toBibtex(citation("idiogramFISH"))
sink()

Authors

Fernando Roa
Mariana PC Telles

References

::: {#refs_normal} :::

R-packages {-}

::: {#refs_software} :::

Shiny App {-}

::: {#refs_shiny} :::

Documentation {-}

::: {#refs_docs} :::



Try the idiogramFISH package in your browser

Any scripts or data that you put into this service are public.

idiogramFISH documentation built on Aug. 22, 2023, 5:08 p.m.