Skip to content

Perl script to draw dotplots from various types of comparison

Notifications You must be signed in to change notification settings

RatneshSingh/dotplot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 

Repository files navigation

dotplot

Perl script to draw dotplots from various types of comparison. Converts comparison results to graphics in the form of dotplot. Currenlty uses blast table, MSTMap, Linkage maps, or a regular table with information on matches.

Usage:
perl dotplot.pl (infile|lgtable|blastTable) -options..
Options:
    -infile|i           infile from mstmap result out
    -lgtable|lgt        lg table with 4 columns.If -lgt is not provided with -i, script assumes that marker names in mst output file includes this info as "MarkerName_Contig_number_location"
                        eg. MarkerName  ContigName      LocationOnContig        LinkageGroup    locationOnLG
    -dagchainer_table|dt result produced by dagchainer.
    ********************************************************************
    -blast_table|bt     blast result in table format.
    -fil_alen|fal       only plot hits of this alignment length or higher
    -fil_eval|fev       only plot hits of this evalue or lower
    -fil_pid|fpi        only plot hits of this percent identity or higher

    -fill_name|fnm      only hits with this string as part of name in query or subject.
    -fil_qname|fqn      only hits with this string as part of name in query.
    -fil_sname|fqs      only hits with this string as part of name in subject.
    -exact              select exact matches instead of pattern match

    -resolution|res     resolution thrshold in nt to draw multiple dots if alignment is longer than resolution[10000]
    -keep_same_order|kso Keep the order of contigs on y and x axis same. Use it only when using blast result to self.
                        This opton will keep the broken diagonal to minimum when dot plot to self is plotted.
    -keep_same_scale|ksc  Keep scale of drawing on both axis same. Usefull when both axis are drawing sequences
                        and user want to keep the aspect ratios of lengths.
    ********************************************************************
    -reg_table|rt       Regular table with 4col of info,
    -seq1               column containing Sequence1 Name  [1]
    -loc1               column Sequence1   Match Location [2]
    -seq2               column containing Sequence2 Name  [3]
    -loc2               column Sequence2   Match Location [4]
    ********************************************************************
    -referencex|rfx     reference genome fasta file to get size for x axis.
    -referencey|rfy     reference genome fasta file to get size for y axis.
    -refseqlenx|rflx    file for x axis containing reference sequence length as seqName Length.
    -refseqleny|rfly    file for y axis containing reference sequence length as seqName Length.
    ********************************************************************
    -out|o              outfile [infile.png ]
    -print_list|pl      print the list of names showing homology
    -img_width|iw       img_width [ 1200 ]
    -img_height|ih      img_height [ 600 ]
    -lg_top|lt          lg_top [ 100 ]
    -cont_top|ct        cont_top [ 100 ]
    -margin|m           margin [ 100 ]
    -font_size|fs       font_size [ 10 ]
    -dotsize|ds         dotsize [ 3 ]
    -no_grid_lines|ngl  no_grid_lines
    -zoom_on_hits|zh    zoom plotting on the hit regions only.
    -equal_block|eb     assigne equal block for each query/subject irrespective of their size.
                        each entry will not on scale to each other.
    -verbose|v          verbose
    -svg                print image as svg. could not make it to print text.Only dotplot.

    ## order names on axis [default ordering is by size]
    -order_by_size|obs  order_by_size [default],
    -order_by_alpha|oba  order_by_alpha,
    -order_by_number|obn  order_by_num. order only by numbers in the names.
    -order_by_homology|olg  order_by_homology,
    -user_defined_order_x|udox user defined order on X axis from a file
    -user_defined_order_y|udoy user defined order on Y axis from a file
    -rotate_x_label|rxl rotate x axis labels [-90]
    -rotate_y_label|ryl rotate y axis labels [0]
    -rotate_xy_label|rxyl rotate xy axis labels
    -scale_x|scx  Add scale on x-axis (cannot be used with zoomed hits option)
    -scale_x_dist|dscx use provided scale for x axis
    -scale_y|scy  Add scale on y-axis (cannot be used with zoomed hits option)
    -scale_y_dist|dscy use provided scale for y axis
    -switch_axis|swa    switch_axis
    -order_by_lg|olg    order contigs based on similarity to lgs.
    -min_markers|mm     Minimum numbe of markers to present for a contig to be aligned on LG
    -as_marker|am       Use user provided char as marker for dotplot.eg. x
    -no_file_name|nfn   Dont print the outfilename at the bottom of  figure.
    -help|h             help

About

Perl script to draw dotplots from various types of comparison

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages