• Stars
    star
    156
  • Rank 239,589 (Top 5 %)
  • Language
    Perl
  • License
    MIT License
  • Created over 2 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Any Way to Show Multi genomic Synteny

NGenomeSyn

An easy-to-use and flexible tool for publication-ready visualization of syntenic relationships on multiple genomes

The NGenomeSyn article has been published in Bioinformatics Journal, please cited this article if possible

PMID: 36883694           DOI:10.1093/bioinformatics/btad121

1 Introduction

NGenomeSyn, an easy-to-use and flexible tool, for publication-quality visualization of syntenic relationships (user-defined or generated by our custom script) and genomic features (e.g. repeats, structural variations, genes) on tens of genomes with high customization. NGenomeSyn allows its user to adjust default options for genome and link styles defined in the configuration file and simply adjusts options of moving, scaling, and rotation of target genomes, yielding a rich layout and publication-ready figure. A state-to-the-art figure enables users and readers to quickly catch key points hidden in the large-amount data at a galance. Moreover, NGenomeSyn could be applied on the visualization of relationships among other data with a similar input format (similar to sankey diagram).

In addition, NGenomeSyn has been cited to visualize genome synteny or other relationship by Yin X et al 2022 , X Hou et al 2022, J Guan et al 2022, lian xu et 2022, G Cheng et al 2023 ect


The advantages of this tool include

  • tens of customizable genomes (>=2)
  • flexible and customizable layout
  • high customization for order, colors or other settings for each genome
  • allow setting for movement, rotation, scaling etc for each genome, which could generate particular layouts, such as triangle, quadrangle, pentagon etc
  • high customization for color, transparency etc for link information

2 Download and Install


The new version will be updated and maintained in hewm2008/NGenomeSyn, please click below website to download the latest version

hewm2008/NGenomeSyn

linux/MaxOS         Download
Install
2.2 Pre-install
The prerequisites for NGenomeSyn include
1) Perl with the SVG.pm in Perl should be installed.(Note: SVG module is optional because related modules have been included in bin/svg-kit directory)
2) convert is recommended to be pre-installed if requiered converting svg to png image format.


Users can install it with the following commands:

        git clone https://github.com/hewm2008/NGenomeSyn.git
        cd NGenomeSyn;	chmod -R 755 bin/*
        ./bin/NGenomeSyn  -h 

3 Parameter description



3.1 NGenomeSyn
3.1.1 Main parameter

        Usage: NGenomeSyn  -InConf  in.conf -OutPut OUT

                -InConf      <s> : InPut Configuration File
                -OutPut      <s> : OutPut svg file result

                -help              See more help *Manual.pdf
                                   [hewm2008 v1.41]


Comments: we also provide a custom perl script bin/GetTwoGenomeSyn.pl for link preparation information (see exmaple1/run2.sh)

See more detailed usage in the             Chinese Documentation
See more detailed usage in the             English Documentation
See the              Example Directory              and for more details. such as : input file format.


3.1.2 Other parameters

###  # Detailed parameters please see  at the  NGenomeSyn_manual_English.pdf 

SetParaFor = global
########## global and required parameters ######
GenomeInfoFile1=./RefA.len ### set path for Genome1, GenomeInfoFileX, X is the number of Genome
GenomeInfoFile2=./RefB.len ### set path for Genome2, Format(chr start End ...)

LinkFileRef1VsRef2=./RefA_RefB.link ### link information between Genome1 and Genome2
                                    ### LinkFileRefXXVsRefYY : link info between GenomeXX and GenomeYY
                                    ### Format (chrA StartA EndA chrB StartB EndB ...


############ canvas and figure[optional] ######
#body=1200                 ### size of canvas with width and height. plot region:  (up/down/left/right)=(55,25,100,120)
#up=55
#down=25
#left=100
#right=120
#CanvasHeightRitao=1.0     ## adjust height of the plot
#CanvasWidthRitao=1.0      ## adjust width of the plot
#NoPng=1                   ## No OutPut the png File


############# adjust genome setting [optional]##########
SetParaFor = Genome1       ## GenomeALL/GenomeX
#ZoomChr=1.0               ## adjust chr length, 1 for equal; >1 for enlarge; <1  for
#RotateChr=30              ## rotate the chr with 30 degrees
#ShiftX=0
#ShiftY=0                  ## move the start of chr to (X,Y)
#MoveToX                   ## MoveToY   ## similar to ShiftX and ShiftY


#ChrWidth=20               ## chr width
#LinkWidth=180             ## link height between this genome and next genome
#ChrSpacing=10             ## spacing width of chr/scaffolds
#NormalizedScale=0         ## custom scale for the geome relative the  default.
#SpeRegionFile=Spe.bed     ## input file for highlighted regions[chr start end key1=value1] in the genome.
#ZoomRegion                ## Zoom the specific Region,format (ZoomRegion=chr2:1000:5000)


#GenomeNameRatio
#GenomeName
## GenomeName  GenomeNameSizeRatio  GenomeNameColor  GenomeNameShiftX GenomeNameShiftY
## ChrNameShow ChrNameShiftX ChrNameShiftY ChrNameSizeRatio ChrNameColor ChrNameRotate
## ShowCoordinates=1     ## Show Coordinates with other para [ScaleNum=10 ScaleUpDown ScaleUnit LabelUnit  LablefontsizeRatio  RotateAxisText NoShowLabel ]


SetParaFor = Genome2       ##

############# adjust link setting [optional]##########
SetParaFor=Link1           ### LinkALL/LinkX  setting for link X
#StyleUpDown=UpDown        ## UpDown DownUp UpUp DownDown line
#Reverse=1                 ## reverse links
#HeightRatio=1.0           ## ratio of link height relative to the default
## other attributes:  fill|stroke|stroke-opacity|fill-opacity|stroke-width


3.2 Output files

out.svg: Output plot in SVG format
out.png: Output plot in png format # convert should be installed

4 Examples



## directory [Example/example*/] has input and output file and script usage.

../../bin/NGenomeSyn -InConf in.conf -OutPut OUT

Example Description
example1 An integrating pipeline including data preparation and visualizing of two genomes for the simplest usage
example2 Horizontal layout of 3 or more genomes, genome layout adjustment and special region highlight
example3 Link settings, five link styles, genome layout adjustment for particular shape (triangle)
example4 ZoomRegion function of local gene structure(CDS mRNA) collinearity
example5 The comprehensive configuration for horizontal layout of more than three genomes (>3)
example6 quick identification of genetic deletion in some breeds (pan-genome frequently analysis) to solve biological issues problems

  • Example 1)two genomes
    For the simplest usage, only two genomic locus files and link file are required to be provided(Minimap2).
    the Minimap2 genome method Minimap2.png
    the MCScanX gene method MCScanX.png
    Also the link file can be provided by syri, see the run3.sh Syri.png

  • Example 2) Horizontal layout of 3 or more genomes

out.png

  • Example 2)Horizontal layout of 3 or more genomes with rotation of the third genome

out.png

  • Example 2)move the three genomes MoveX Y to the middle of the canvas, and rotate the genomes at -135, -45 and 90 degrees respectively. out3.png

  • Example 3)any layout of three genomes for link setting
    trilateral layout :Five link styles were designed in this tools, "DownDown", "UpUp", "DownUp","UpDown","line". out.png out.png

  • Example 4) publication-ready and flexible layout for multiple genomes out.png
    we could generate a similar figure presented by Zheng et al as follows out.png

  • Example 5) local synteny in gene structure and ZoomRegion
    we provide a parameter (SpeRegionWidthRatio) for controlling width of SpeRegion, supporting highlight gene structures (e.g. CDS, UTR etc) out.png out.png

  • Example 6) practical application (solve biological issues)
    In the pan-genome study, multiple genomes are de novo assembled from different individuals (accessions) independently, and it is often important to identify genetic structural variation (insertion and deletion) of different individuals (accessions) in a certain region to investigate whether link genetic variations to candidate genes that are responsible for important traits. The following example is an identification of some structural variations (insertion, deletion) in several rice accessions compared to the chromosome 12 of the reference rice genome ("IRGSP"). For example, a segment insertion occurs in the accessions of "9311" and "ZH11". out.png


In fact, NGenomeSyn is not only designed for the visualization of genomic synteny and genomic features, but also for other relationships among any data with a similar input format. For example, a user (lian xu et 2022) used NGenomeSyn for visualization clusters with similar gene expression patterns (generated by Mfuzz software) between other four datasets and the reference dataset and revealed conserved expression patterns of differential expression genes among different datasets.

realityData.png

5 Citation


please cited this article if possible
Weiming He, Jian Yang, Yi Jing, Lian Xu, Kang Yu, Xiaodong Fang, NGenomeSyn: an easy-to-use and flexible tool for publication-ready visualization of syntenic relationships across multiple genomes, Bioinformatics, 2023;, btad121, https://doi.org/10.1093/bioinformatics/btad121

6 Contact


######################swimming in the sky and flying in the sea #############################