Mercurial > repos > rnateam > graphclust_postprocessing
changeset 17:f93c868203cc draft default tip
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/GraphClust/CollectResults commit 4406735e44aba20859c252be39f4e99df28c7a92
author | rnateam |
---|---|
date | Sat, 27 Oct 2018 13:23:06 -0400 |
parents | 79df97a1bc0f |
children | |
files | evaluation.py glob_report.xml glob_report.xml.orig test-data/1.cluster.all test-data/1.cluster.all.fa test-data/1.cluster.top5.alirna.ps test-data/1.cluster.top5.aln.ps test-data/1.cluster.top5.result.aln_1.R2R.sto.pdf test-data/2.cluster.all test-data/2.cluster.top5.alirna.ps test-data/2.cluster.top5.aln.ps test-data/RESULTS.zip test-data/combined_cm_out test-data/evaluation1.txt |
diffstat | 14 files changed, 2010 insertions(+), 62 deletions(-) [+] |
line wrap: on
line diff
--- a/evaluation.py Fri Feb 23 10:46:41 2018 -0500 +++ b/evaluation.py Sat Oct 27 13:23:06 2018 -0400 @@ -1,4 +1,4 @@ -#!/usr/bin/env python2 +#!/usr/bin/env python import glob from os import system import re @@ -12,7 +12,7 @@ fasta_dir = sys.argv[1] results_dir = sys.argv[2] -dataNames = fasta_dir+"/data.names" +dataNames = os.path.join(fasta_dir,"data.names") listOfClusters = [] listOfHeaders = [] @@ -54,7 +54,7 @@ numberOfClusters += 1 # 1 cluster for all unassigned seqs ignoreBlackList = False with open(dataNames, "r") as names: - for line in names.readlines(): + for line in names: splits = line.split() fullUniqeId = splits[3] fullHeader = '' @@ -72,9 +72,9 @@ toWrite = "" for i in range(len(listOfClusters)): - toWrite += listOfHeaders[i] + "\t" + listOfClusters[i] + '\n' - -with open(results_dir+"/fullTab.tabular", "w") as full: + toWrite += "%s\t%s\n" % (listOfHeaders[i], listOfClusters[i]) + +with open(os.path.join(results_dir,"fullTab.tabular"), "w") as full: full.write(toWrite) @@ -88,7 +88,11 @@ adjusted_mutual_info_score = metrics.adjusted_mutual_info_score(listOfHeaders, listOfClusters) v_measure_score = metrics.v_measure_score(listOfHeaders, listOfClusters) - toWrite = "completeness_score : " + str(completeness_score) + "\n" + "homogeneity_score : " + str(homogeneity_score) + "\n" + "adjusted_rand_score : " +str(adjusted_rand_score) + "\n" + "adjusted_mutual_info_score : " + str(adjusted_mutual_info_score)+ "\n" + "v_measure_score : " + str(v_measure_score) + toWrite = "completeness_score : {}\n".format(completeness_score) + toWrite += "homogeneity_score : {}\n".format(homogeneity_score) + toWrite += "adjusted_rand_score : {}\n".format(adjusted_rand_score) + toWrite += "adjusted_mutual_info_score : {}\n".format(adjusted_mutual_info_score) + toWrite += "v_measure_score : {}\n".format(v_measure_score) else:
--- a/glob_report.xml Fri Feb 23 10:46:41 2018 -0500 +++ b/glob_report.xml Sat Oct 27 13:23:06 2018 -0400 @@ -1,46 +1,32 @@ -<tool id="glob_report" name="cluster_collection_report" version="0.4" > +<tool id="glob_report" name="cluster_collection_report" version="0.5" > <requirements> - <requirement type="package" version="0.5.2">graphclust-wrappers</requirement> + <requirement type="package" version="0.6.0">graphclust-wrappers</requirement> <requirement type="package" version='0.5'>perl-array-utils</requirement> <requirement type="package" version='0.18.1'>scikit-learn</requirement> <requirement type="package" version='1.8.10'>locarna</requirement> <requirement type="package" version='2.1'>rnaz</requirement> <requirement type="package" version="1.1.2">infernal</requirement> <requirement type="package" version='2.2.10'>viennarna</requirement> - <requirement type="package" version='1.3.26'>graphicsmagick</requirement> + <requirement type="package" version='1.3.30'>graphicsmagick</requirement> <requirement type="package" version='0.6.1'>rscape</requirement> <requirement type="package" version='6.0'>unzip</requirement> - </requirements> - <stdio> - <exit_code range="1:" /> - </stdio> - <command> - <![CDATA[ + <command detect_errors="exit_code"> + <![CDATA[ unzip $FASTA &> /dev/null && - - mkdir ./CMSEARCH && - mkdir ./MODEL && - - #set $inputFiles = "" - + mkdir ./CMSEARCH && + mkdir ./MODEL && + #import re #for $cms_res in $cmsearch_results: - ###set $inputFiles += str($cms_res.element_identifier)+',' - ln -f -s '$cms_res' ./CMSEARCH/$cms_res.element_identifier && + #set $safename_cm = re.sub('[^\w\-_\.]', '_', $cms_res.element_identifier) + ln -f -s '$cms_res' ./CMSEARCH/$safename_cm && #end for - #set $inputFiles = $inputFiles[:-1] - - #set $inputFilesTrees = "" - #for $mods in $model_tree_files: - ###set $inputFilesTrees += str($mods.element_identifier)+',' - ln -f -s '$mods' ./MODEL/$mods.element_identifier && + #set $safename_tr = re.sub('[^\w\-_\.]', '_', $mods.element_identifier) + ln -f -s '$mods' ./MODEL/$safename_tr && #end for - #set $inputFilesTrees = $inputFilesTrees[:-1] - 'glob_res.pl' - ##'$inputFiles' $merge_cluster_ol $merge_overlap $min_cluster_size @@ -49,7 +35,6 @@ $cm_bitscore_sig $partition_type '' $cut_type - ##'$inputFilesTrees' $results_top_num #if $iteration_num.iteration_num_selector: $iteration_num.CI @@ -157,7 +142,10 @@ <data name="evaluation" format="txt" from_work_dir="RESULTS/evaluation.txt" label="evaluation_of_clusters" /> <data name="combined_cm_out" format="txt" from_work_dir="combined_cm_out" label="combined_cmsearch_output" /> <collection name="clusters" type="list" label="CLUSTERS"> - <discover_datasets pattern="(?P<name>^.*\.all$)" directory="RESULTS" /> + <discover_datasets format="txt" pattern="(?P<name>^.*\.all$)" directory="RESULTS" /> + </collection> + <collection name="allFasta" type="list" label="sequences.fa"> + <discover_datasets format="fasta" pattern="(?P<name>^.*\.all.fa$)" directory="RESULTS" /> </collection> <collection name="partitions" type="list" label="Partitions"> <discover_datasets pattern="(?P<name>^.*$)" directory="RESULTS/partitions" /> @@ -178,7 +166,6 @@ <param name="FASTA" value="FASTA.zip" ftype="searchgui_archive"/> <param name="cmsearch_results" value="1.1.tree,1.2.tree"/> <param name="model_tree_files" value="1.1.model.tree.fa,1.2.model.tree.fa"/> - <param name="combined_cm_out" value="combined_cm_out"/> <param name="partition_type" value="0"/> <param name="cut_type" value="0"/> <conditional name="iteration_num"> @@ -190,11 +177,13 @@ <param name="cm_min_bitscore" value="20"/> <param name="cm_max_eval" value="0.001"/> <param name="cm_bitscore_sig" value="0"/> + <param name="results_top_num" value="5"/> <output name="final_stats" file="RESULTS/cluster.final.stats" /> + <output name="combined_cm_out" file="combined_cm_out"/> + <output name="evaluation" file="evaluation1.txt"/> <output_collection name="clusters" type="list"> <element name="1.cluster.all" file="RESULTS/1.cluster.all" compare="contains"/> - <element name="2.cluster.all" file="RESULTS/2.cluster.all" compare="contains"/> - + <element name="2.cluster.all" file="RESULTS/2.cluster.all" compare="contains"/> </output_collection> <output_collection name="partitions"> <element name="final_overlap.map" file="RESULTS/partitions/final_overlap.map" compare="contains"> @@ -215,7 +204,6 @@ <element name="final_partition.soft" file="RESULTS/partitions/final_partition.soft" /> <element name="final_partition.used_cmsearch" file="RESULTS/partitions/final_partition.used_cmsearch" compare="contains"/> </output_collection> - <param name="results_top_num" value="5"/> <output_collection name="topSecondaryStruct" type="list"> <element name="1.cluster.top5.alirna.png" file="1.cluster.top5.alirna.png" ftype="png" compare="sim_size" /> <element name="2.cluster.top5.alirna.png" file="2.cluster.top5.alirna.png" ftype="png" compare="sim_size" /> @@ -247,14 +235,6 @@ ]]> </help> <citations> - <citation type="bibtex">@inproceedings{costa2010fast, - title={Fast neighborhood subgraph pairwise distance kernel}, - author={Costa, Fabrizio and De Grave, Kurt}, - booktitle={Proceedings of the 26th International Conference on Machine Learning}, - pages={255--262}, - year={2010}, - organization={Omnipress} - } - </citation> + <citation type="doi">10.5281/zenodo.597695</citation> </citations> </tool>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/glob_report.xml.orig Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,268 @@ +<<<<<<< HEAD +<tool id="glob_report" name="cluster_collection_report" version="0.4" > +======= +<tool id="glob_report" name="cluster_collection_report" version="0.3" > +>>>>>>> edc317491e1fdf1233bd9b45376dc05abf6eabd5 + <requirements> + <requirement type="package" version="0.5.2">graphclust-wrappers</requirement> + <requirement type="package" version='0.5'>perl-array-utils</requirement> + <requirement type="package" version='0.18.1'>scikit-learn</requirement> + <requirement type="package" version='1.8.10'>locarna</requirement> + <requirement type="package" version='2.1'>rnaz</requirement> + <requirement type="package" version="1.1.2">infernal</requirement> + <requirement type="package" version='2.2.10'>viennarna</requirement> + <requirement type="package" version='1.3.26'>graphicsmagick</requirement> + <requirement type="package" version='0.6.1'>rscape</requirement> + <requirement type="package" version='6.0'>unzip</requirement> + + </requirements> + <stdio> + <exit_code range="1:" /> + </stdio> + <command> + <![CDATA[ + unzip $FASTA &> /dev/null && + + mkdir ./CMSEARCH && + mkdir ./MODEL && + + #set $inputFiles = "" + + #for $cms_res in $cmsearch_results: + ###set $inputFiles += str($cms_res.element_identifier)+',' + ln -f -s '$cms_res' ./CMSEARCH/$cms_res.element_identifier && + #end for + #set $inputFiles = $inputFiles[:-1] + + #set $inputFilesTrees = "" + + #for $mods in $model_tree_files: + ###set $inputFilesTrees += str($mods.element_identifier)+',' + ln -f -s '$mods' ./MODEL/$mods.element_identifier && + #end for + #set $inputFilesTrees = $inputFilesTrees[:-1] + + + 'glob_res.pl' + ##'$inputFiles' + $merge_cluster_ol + $merge_overlap + $min_cluster_size + $cm_min_bitscore + $cm_max_eval + $cm_bitscore_sig + $partition_type '' + $cut_type + ##'$inputFilesTrees' + $results_top_num + #if $iteration_num.iteration_num_selector: + $iteration_num.CI + $final_partition_soft + $final_partition_used_cmsearch + '$combined_cm' + + #end if + + #if str($advanced_opts.advanced_opts_selector) == "show": + #if str($advanced_opts.param_type.param_type_selector) == "gclust": + $advanced_opts.param_type.p + $advanced_opts.param_type.max_diff_am + $advanced_opts.param_type.max_diff + $advanced_opts.param_type.tau + $advanced_opts.param_type.struct_weight + $advanced_opts.param_type.indel_opening + $advanced_opts.param_type.indel + $advanced_opts.param_type.alifold_consensus_dp + #end if + #end if + + && +<<<<<<< HEAD + python '$__tool_directory__/evaluation.py' FASTA/ RESULTS/ +======= + python '$__tool_directory__/evaluation.py' +>>>>>>> edc317491e1fdf1233bd9b45376dc05abf6eabd5 + + #if $cdhit: + && + python '$__tool_directory__/addCdhitseqs.py' '$cdhit' + #end if +]]> + </command> + <inputs> + <param type="data" name="FASTA" format="zip" /> + <param type="data" name="cmsearch_results" format="tabular" multiple="True"/> + <param type="data" name="model_tree_files" format="txt" multiple="True"/> + <param name="partition_type" type="boolean" checked="True" truevalue="0" falsevalue="1" label="Hard partition"/> + <param name="cut_type" type="boolean" checked="True" truevalue="0" falsevalue="1" label="Use CM score for cutoff" help="otherwise use E-value"/> + <param type="data" name="cdhit" format="txt" optional="true"/> + <conditional name="iteration_num"> + <param name="iteration_num_selector" type="boolean" checked="no" label="Multiple iterations" help="for single iteration- NO, for multiple-YES"/> + <when value="true"> + <param name="CI" type="integer" value="2" size="5" label="Number of current iteration "/> + <param type="data" name="final_partition_soft" format="txt" /> + <param type="data" name="final_partition_used_cmsearch" format="txt" /> + <param type="data" name="combined_cm" format="txt" /> + </when> + <when value="false" ></when> + </conditional> + <param name="merge_cluster_ol" type="float" value="0.66" size="5" label="merge_cluster_ol" help=""/> + <param name="merge_overlap" type="float" value="0.51" size="5" label="merge_overlap" help=""/> + <param name="min_cluster_size" type="integer" value="3" size="5" label="min_cluster_size" help=""/> + <param name="cm_min_bitscore" type="integer" value="20" size="5" label="cm_min_bitscore" help=""/> + <param name="cm_max_eval" type="float" value="0.001" size="5" label="cm_max_eval" help=""/> + <param name="cm_bitscore_sig" type="integer" value="1" size="5" label="cm_bitscore_sig" help=""/> + <param name="results_top_num" type="integer" value="5" size="5" label="results_top_num" help=""/> + + <conditional name="advanced_opts"> + <param name="advanced_opts_selector" type="select" label="Advanced Options"> + <option value="hide" selected="True">Hide</option> + <option value="show">Show</option> + </param> + <when value="hide"></when> + <when value="show"> + + <conditional name="param_type"> + <param name="param_type_selector" type="select" label="Choose the type of parameters"> + <option value="locarna">LocARNA defaults</option> + <option value="gclust" selected="True">GrapClust defaults(changeable)</option> + </param> + <when value="gclust"> + + <param name="p" type="float" value="0.001" size="5" label="minimal probability" help="-p"/> + <param name="max_diff_am" type="integer" value="50" size="5" label=" maximal difference for sizes of matched arcs" help="--max-diff-am"/> + <param argument="tau" type="integer" value="50" min="0" max="200" label="Sequence contribution at structure match in percent"/> + <param name="max_diff" type="integer" value="100" size="5" label="maximal difference for alignment traces" help="--max-diff"/> + + <param name="struct_weight" argument="struct-weight" + label="Structure weight" type="integer" + value="180" min="0" max="800" /> + <param name="indel_opening" argument="indel-opening" + label="Indel opening score" type="integer" + value="-400" max="0" min="-1500" /> + <param argument="indel" label="Indel score" type="integer" + value="-200" min="-1000" max="0" /> + + <param name="alifold_consensus_dp" + type="boolean" checked="True" + truevalue="--alifold-consensus-dp" falsevalue=" " + label="Compute consensus dot plot by alifold" /> + + </when> + <when value="locarna"> + </when> + </conditional> + + </when> + </conditional> + + </inputs> + <outputs> + <data name="final_stats" format="txt" from_work_dir="RESULTS/cluster.final.stats" label="cluster.final.stats" /> + <data name="tableForEval" format="tabular" from_work_dir="RESULTS/fullTab.tabular" label="tableForEval" /> + <data name="final_soft" format="txt" from_work_dir="RESULTS/partitions/final_partition.soft" label="soft_part" /> + <data name="final_used_cmsearch" format="txt" from_work_dir="RESULTS/partitions/final_partition.used_cmsearch" label="final_partition_used_cmsearch" /> + <data name="evaluation" format="txt" from_work_dir="RESULTS/evaluation.txt" label="evaluation_of_clusters" /> + <data name="combined_cm_out" format="txt" from_work_dir="combined_cm_out" label="combined_cmsearch_output" /> + <collection name="clusters" type="list" label="CLUSTERS"> + <discover_datasets pattern="(?P<name>^.*\.all$)" directory="RESULTS" /> + </collection> + <collection name="partitions" type="list" label="Partitions"> + <discover_datasets pattern="(?P<name>^.*$)" directory="RESULTS/partitions" /> + </collection> + <collection name="topSecondaryStruct" type="list" label="Top $results_top_num alirna.ps"> + <discover_datasets format="png" pattern="(?P<name>^.*\.alirna.png$)" /> + </collection> + <collection name="topDot" type="list" label="Top $results_top_num aln.ps"> + <discover_datasets format="png" pattern="(?P<name>^.*\.aln.png$)" /> + </collection> + <collection name="rscapePlot" type="list" label="R-scape Plot"> + <discover_datasets format="pdf" pattern="(?P<name>^.*\.pdf$)" /> + </collection> + <data name="RESULTS_zip" format="zip" from_work_dir="RESULTS.zip" label="RESULTS.zip" /> + </outputs> + <tests> + <test> + <param name="FASTA" value="FASTA.zip" ftype="searchgui_archive"/> + <param name="cmsearch_results" value="1.1.tree,1.2.tree"/> + <param name="model_tree_files" value="1.1.model.tree.fa,1.2.model.tree.fa"/> + <param name="combined_cm_out" value="combined_cm_out"/> + <param name="partition_type" value="0"/> + <param name="cut_type" value="0"/> + <conditional name="iteration_num"> + <param name="iteration_num_selector" value="false"/> + </conditional> + <param name="merge_cluster_ol" value="0.66"/> + <param name="merge_overlap" value="0.51"/> + <param name="min_cluster_size" value="3"/> + <param name="cm_min_bitscore" value="20"/> + <param name="cm_max_eval" value="0.001"/> + <param name="cm_bitscore_sig" value="0"/> + <output name="final_stats" file="RESULTS/cluster.final.stats" /> + <output_collection name="clusters" type="list"> + <element name="1.cluster.all" file="RESULTS/1.cluster.all" compare="contains"/> + <element name="2.cluster.all" file="RESULTS/2.cluster.all" compare="contains"/> + + </output_collection> + <output_collection name="partitions"> + <element name="final_overlap.map" file="RESULTS/partitions/final_overlap.map" compare="contains"> + <assert_contents> + <has_text text="1.1 1.1 " /> + <has_text text="1.2 1.2" /> + </assert_contents> + </element> + <element name="final_overlap.matrix" file="RESULTS/partitions/final_overlap.matrix" compare="contains"> + <assert_contents> + <has_text text="MODEL CLASS 0 0" /> + <!--has_text text="1.2" /> + <has_text text="1.1" /--> + </assert_contents> + </element> + <element name="final_partition.hard.best" file="RESULTS/partitions/final_partition.hard.best" /> + <element name="final_partition.hard.merged" file="RESULTS/partitions/final_partition.hard.merged" /> + <element name="final_partition.soft" file="RESULTS/partitions/final_partition.soft" /> + <element name="final_partition.used_cmsearch" file="RESULTS/partitions/final_partition.used_cmsearch" compare="contains"/> + </output_collection> + <param name="results_top_num" value="5"/> + <output_collection name="topSecondaryStruct" type="list"> + <element name="1.cluster.top5.alirna.png" file="1.cluster.top5.alirna.png" ftype="png" compare="sim_size" /> + <element name="2.cluster.top5.alirna.png" file="2.cluster.top5.alirna.png" ftype="png" compare="sim_size" /> + </output_collection> + <output_collection name="topDot" type="list"> + <element name="1.cluster.top5.aln.png" file="1.cluster.top5.aln.png" ftype="png" compare="sim_size" /> + <element name="2.cluster.top5.aln.png" file="2.cluster.top5.aln.png" ftype="png" compare="sim_size" /> + </output_collection> + + <output_collection name="rscapePlot" type="list"> + <element name="1.cluster.top5.result.aln_1.R2R.sto.pdf" file="1.cluster.top5.result.aln_1.R2R.sto.pdf" ftype="pdf" compare="sim_size" /> + <element name="2.cluster.top5.result.aln_1.R2R.sto.pdf" file="2.cluster.top5.result.aln_1.R2R.sto.pdf" ftype="pdf" compare="sim_size" /> + </output_collection> + + <output name="RESULTS_zip" file="RESULTS.zip" ftype="zip" compare="sim_size" delta="20000"/> + + </test> + </tests> + <help> + <![CDATA[ + +**What it does** + +Post-processing. Redundant clusters are merged and instances that belong to multiple clusters +are assigned unambiguously. For every pair of clusters, the relative overlap (i.e. the fraction of +instances that occur in both clusters) is computed and clusters are merged if the overlap exceeds 50%. +Cluster members are finally ranked by their CM bitscore. + + ]]> + </help> + <citations> + <citation type="bibtex">@inproceedings{costa2010fast, + title={Fast neighborhood subgraph pairwise distance kernel}, + author={Costa, Fabrizio and De Grave, Kurt}, + booktitle={Proceedings of the 26th International Conference on Machine Learning}, + pages={255--262}, + year={2010}, + organization={Omnipress} + } + </citation> + </citations> +</tool>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/1.cluster.all Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,34 @@ +SEQ31#1#73#+ RESULT 1 CM_SCORE 88.9 MODEL 1.1 ORIGID RF00005_rep.34_AC008443.10/43006-42934_31 ORIGHEAD RF00005 +SEQ9#1#73#+ RESULT 1 CM_SCORE 87.8 MODEL 1.1 ORIGID RF00005_rep.14_AL021808.2/65570-65498_9 ORIGHEAD RF00005 +SEQ32#1#73#+ RESULT 1 CM_SCORE 87.3 MODEL 1.1 ORIGID RF00005_rep.35_AC005783.1/27398-27326_32 ORIGHEAD RF00005 +SEQ13#1#82#+ RESULT 1 CM_SCORE 86.3 MODEL 1.1 ORIGID RF00005_rep.18_AL021918.1/81116-81197_13 ORIGHEAD RF00005 +SEQ28#1#71#+ RESULT 1 CM_SCORE 80.7 MODEL 1.1 ORIGID RF00005_rep.31_AC092686.3/29631-29561_28 ORIGHEAD RF00005 +SEQ46#1#72#+ RESULT 1 CM_SCORE 78.4 MODEL 1.1 ORIGID RF00005_rep.5_AL590385.23/26129-26058_46 ORIGHEAD RF00005 +SEQ17#1#71#+ RESULT 1 CM_SCORE 77.7 MODEL 1.1 ORIGID RF00005_rep.21_AL355149.13/15278-15208_17 ORIGHEAD RF00005 +SEQ37#1#82#+ RESULT 1 CM_SCORE 76.3 MODEL 1.1 ORIGID RF00005_rep.3_Z54587.1/126-45_37 ORIGHEAD RF00005 +SEQ10#1#73#+ RESULT 1 CM_SCORE 76.3 MODEL 1.1 ORIGID RF00005_rep.15_AC008443.10/42590-42518_10 ORIGHEAD RF00005 +SEQ23#1#74#+ RESULT 1 CM_SCORE 75.9 MODEL 1.1 ORIGID RF00005_rep.27_AL352978.6/119697-119770_23 ORIGHEAD RF00005 +SEQ30#1#72#+ RESULT 1 CM_SCORE 74.9 MODEL 1.1 ORIGID RF00005_rep.33_AC018638.5/4694-4623_30 ORIGHEAD RF00005 +SEQ16#1#72#+ RESULT 1 CM_SCORE 74.9 MODEL 1.1 ORIGID RF00005_rep.20_AL671879.2/100356-100285_16 ORIGHEAD RF00005 +SEQ18#1#72#+ RESULT 1 CM_SCORE 72.9 MODEL 1.1 ORIGID RF00005_rep.22_AL590385.23/26487-26416_18 ORIGHEAD RF00005 +SEQ35#1#72#+ RESULT 1 CM_SCORE 71.9 MODEL 1.1 ORIGID RF00005_rep.38_J00309.1/356-427_35 ORIGHEAD RF00005 +SEQ7#1#83#+ RESULT 1 CM_SCORE 71.2 MODEL 1.1 ORIGID RF00005_rep.12_AC108081.2/59868-59786_7 ORIGHEAD RF00005 +SEQ33#1#72#+ RESULT 1 CM_SCORE 69.2 MODEL 1.1 ORIGID RF00005_rep.36_AC007298.17/145366-145295_33 ORIGHEAD RF00005 +SEQ29#1#66#+ RESULT 1 CM_SCORE 31.0 MODEL 1.1 ORIGID RF00005_rep.32_AF347015.1/5892-5827_29 ORIGHEAD RF00005 +SEQ11#1#82#+ RESULT 1 CM_SCORE 88.3 CMSEARCH 1.1 ORIGID RF00005_rep.16_AL133551.13/12355-12436_11 ORIGHEAD RF00005 +SEQ36#1#73#+ RESULT 1 CM_SCORE 83.0 CMSEARCH 1.1 ORIGID RF00005_rep.39_AL031229.2/40502-40430_36 ORIGHEAD RF00005 +SEQ12#1#82#+ RESULT 1 CM_SCORE 82.7 CMSEARCH 1.1 ORIGID RF00005_rep.17_AL021918.1/54817-54736_12 ORIGHEAD RF00005 +SEQ26#1#72#+ RESULT 1 CM_SCORE 82.0 CMSEARCH 1.1 ORIGID RF00005_rep.2_AL662865.4/12206-12135_26 ORIGHEAD RF00005 +SEQ5#1#72#+ RESULT 1 CM_SCORE 81.7 CMSEARCH 1.1 ORIGID RF00005_rep.10_X58792.1/174-245_5 ORIGHEAD RF00005 +SEQ50#1#73#+ RESULT 1 CM_SCORE 80.8 CMSEARCH 1.1 ORIGID RF00005_rep.9_AP000442.6/2022-1950_50 ORIGHEAD RF00005 +SEQ15#1#73#+ RESULT 1 CM_SCORE 80.6 CMSEARCH 1.1 ORIGID RF00005_rep.1_AC005329.1/7043-6971_15 ORIGHEAD RF00005 +SEQ24#1#73#+ RESULT 1 CM_SCORE 80.3 CMSEARCH 1.1 ORIGID RF00005_rep.28_X04779.1/1-73_24 ORIGHEAD RF00005 +SEQ4#1#73#+ RESULT 1 CM_SCORE 79.2 CMSEARCH 1.1 ORIGID RF00005_rep.0_M15347.1/1040-968_4 ORIGHEAD RF00005 +SEQ20#1#72#+ RESULT 1 CM_SCORE 75.8 CMSEARCH 1.1 ORIGID RF00005_rep.24_AC004941.2/32735-32806_20 ORIGHEAD RF00005 +SEQ21#1#74#+ RESULT 1 CM_SCORE 74.8 CMSEARCH 1.1 ORIGID RF00005_rep.25_AC006449.19/196857-196784_21 ORIGHEAD RF00005 +SEQ45#1#72#+ RESULT 1 CM_SCORE 71.6 CMSEARCH 1.1 ORIGID RF00005_rep.4_Z98744.2/66305-66234_45 ORIGHEAD RF00005 +SEQ19#1#82#+ RESULT 1 CM_SCORE 69.0 CMSEARCH 1.1 ORIGID RF00005_rep.23_M16479.1/42-123_19 ORIGHEAD RF00005 +SEQ22#1#72#+ RESULT 1 CM_SCORE 48.1 CMSEARCH 1.1 ORIGID RF00005_rep.26_AF346999.1/4402-4331_22 ORIGHEAD RF00005 +SEQ40#1#66#+ RESULT 1 CM_SCORE 44.2 CMSEARCH 1.1 ORIGID RF00005_rep.42_AF347015.1/5827-5762_40 ORIGHEAD RF00005 +SEQ14#1#73#+ RESULT 1 CM_SCORE 29.5 CMSEARCH 1.1 ORIGID RF00005_rep.19_AF134583.1/1816-1744_14 ORIGHEAD RF00005 +SEQ39#1#69#+ RESULT 1 CM_SCORE 21.6 CMSEARCH 1.1 ORIGID RF00005_rep.41_AC093311.2/140036-139968_39 ORIGHEAD RF00005
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/1.cluster.all.fa Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,66 @@ +>SEQ36_26_73_+ RESULT 1 SCORE 46.5 EVALUE 2.1e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.39_AL031229.2/40502-40430_36 ORIGHEAD RF00005_rep.39 +GUUCGCCUAACACGCGAAAGGUCCCUGGAUCAAAACCAGGCGGAAACA +>SEQ11_26_82_+ RESULT 1 SCORE 50.0 EVALUE 4.6e-09 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.16_AL133551.13/12355-12436_11 ORIGHEAD RF00005_rep.16 +GUUGGACUUGAAAUCCAAUGGGGUCUCCCCGCGCAGGUUCGAACCCUGCUCGCUGCG +>SEQ35_26_65_+ RESULT 1 SCORE 42.0 EVALUE 4.1e-08 CLUSTER 1.1 LOC MISS ORIGID RF00005_rep.38_J00309.1/356-427_35 ORIGHEAD RF00005_rep.38 +UCGGCGCUUUCACCGCCGCGCCCCGGGUUCGAUUCCCGGC +>SEQ23_27_74_+ RESULT 1 SCORE 47.1 EVALUE 1.6e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.27_AL352978.6/119697-119770_23 ORIGHEAD RF00005_rep.27 +GUGGUGCUAAUAACGCCAAGGUCGCGGGUUCGAUCCCCGUACGGGCCA +>SEQ45_25_72_+ RESULT 1 SCORE 41.4 EVALUE 1.8e-07 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.4_Z98744.2/66305-66234_45 ORIGHEAD RF00005_rep.4 +GCUGGGCCCAUAACCCAGAGGUCGAUGGAUCGAAACCAUCCUCUGCUA +>SEQ17_25_71_+ RESULT 1 SCORE 48.2 EVALUE 9.8e-09 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.21_AL355149.13/15278-15208_17 ORIGHEAD RF00005_rep.21 +UCUCGCCUCCCACGCGGGAGACCCGGGUUCAAUUCCCGGCCAAUGCA +>SEQ31_26_73_+ RESULT 1 SCORE 53.2 EVALUE 1.2e-09 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.34_AC008443.10/43006-42934_31 ORIGHEAD RF00005_rep.34 +GUUCGCCUCACACGCGAAAGGUCCCCGGUUCGAAACCGGGCGGAAACA +>SEQ5_26_65_+ RESULT 1 SCORE 43.3 EVALUE 2.2e-08 CLUSTER 1.1 LOC MISS ORIGID RF00005_rep.10_X58792.1/174-245_5 ORIGHEAD RF00005_rep.10 +UCUGGACUUUGAAUCCAGCGAUCCGAGUUCAAAUCUCGGU +>SEQ33_26_72_+ RESULT 1 SCORE 42.6 EVALUE 1.1e-07 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.36_AC007298.17/145366-145295_33 ORIGHEAD RF00005_rep.36 +CCCCGCCUGUCACGCGGGAGACCGGGGUUCGAUUCCCCGACGGGGAG +>SEQ7_27_76_+ RESULT 1 SCORE 39.0 EVALUE 1.8e-07 CLUSTER 1.1 LOC MISS ORIGID RF00005_rep.12_AC108081.2/59868-59786_7 ORIGHEAD RF00005_rep.12 +GCUGCGUUCAGGUCGCAGUCUCCCCUGGAGGCGUGGGUUCGAAUCCCACU +>SEQ26_26_65_+ RESULT 1 SCORE 42.9 EVALUE 2.6e-08 CLUSTER 1.1 LOC MISS ORIGID RF00005_rep.2_AL662865.4/12206-12135_26 ORIGHEAD RF00005_rep.2 +UCUGGACUCUGAAUCCAGCGAUCCGAGUUCAAAUCUCGGU +>SEQ22_26_65_+ RESULT 1 SCORE 31.6 EVALUE 5.9e-06 CLUSTER 1.1 LOC MISS ORIGID RF00005_rep.26_AF346999.1/4402-4331_22 ORIGHEAD RF00005_rep.26 +GGAGAAUUUUGGAUUCUCAGGGAUGGGUUCGAUUCUCAUA +>SEQ28_25_71_+ RESULT 1 SCORE 51.1 EVALUE 2.8e-09 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.31_AC092686.3/29631-29561_28 ORIGHEAD RF00005_rep.31 +UCUCGCCUGCCACGCGGGAGGCCCGGGUUCGAUUCCCGGCCAAUGCA +>SEQ30_25_72_+ RESULT 1 SCORE 41.2 EVALUE 2e-07 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.33_AC018638.5/4694-4623_30 ORIGHEAD RF00005_rep.33 +UCUCGCUUAGGGUGCGAGAGGUCCCGGGUUCAAAUCCCGGACGAGCCC +>SEQ9_26_73_+ RESULT 1 SCORE 52.7 EVALUE 1.4e-09 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.14_AL021808.2/65570-65498_9 ORIGHEAD RF00005_rep.14 +GUUCGCCUCACACGCGAAAGGUCCCCGGUUCGAAACCGGGCAGAAGCA +>SEQ37_27_75_+ RESULT 1 SCORE 43.0 EVALUE 2.6e-08 CLUSTER 1.1 LOC MISS ORIGID RF00005_rep.3_Z54587.1/126-45_37 ORIGHEAD RF00005_rep.3 +GCUGGAUUUAGGCUCCAGUCUCUUCGGAGGCGUGGGUUCGAAUCCCACC +>SEQ15_26_73_+ RESULT 1 SCORE 49.2 EVALUE 6.6e-09 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.1_AC005329.1/7043-6971_15 ORIGHEAD RF00005_rep.1 +GUUAGACUGAAGAUCUAAAGGUCCCUGGUUCGAUCCCGGGUUUCGGCA +>SEQ32_26_73_+ RESULT 1 SCORE 54.0 EVALUE 8.3e-10 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.35_AC005783.1/27398-27326_32 ORIGHEAD RF00005_rep.35 +AUUCGCCUCACACGCGAAAGGUCCCCGGUUCGAUCCCGGGCGGAAACA +>SEQ12_26_82_+ RESULT 1 SCORE 47.0 EVALUE 1.7e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.17_AL021918.1/54817-54736_12 ORIGHEAD RF00005_rep.17 +GAUGGACUUGAAAUCCAUUGGGGUUUCCCCGCGCAGGUUCGAAUCCUGUCGGCUACG +>SEQ46_26_72_+ RESULT 1 SCORE 45.5 EVALUE 3.2e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.5_AL590385.23/26129-26058_46 ORIGHEAD RF00005_rep.5 +UCGGCGCUCUCACCGCCGCGGCCCGGGUUCGAUUCCCGGUCAGGGAA +>SEQ24_26_73_+ RESULT 1 SCORE 45.0 EVALUE 4e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.28_X04779.1/1-73_24 ORIGHEAD RF00005_rep.28 +GGAGGACUGUAGAUCCUUAGGUCGCUGGUUCGAUUCCGGCUCGAAGGA +>SEQ18_26_72_+ RESULT 1 SCORE 45.5 EVALUE 3.1e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.22_AL590385.23/26487-26416_18 ORIGHEAD RF00005_rep.22 +AGCUGCCUUCCAAGCAGUUGACCCGGGUUCGAUUCCCGGCCAACGCA +>SEQ10_26_73_+ RESULT 1 SCORE 45.6 EVALUE 3e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.15_AC008443.10/42590-42518_10 ORIGHEAD RF00005_rep.15 +AUGAGACUCUUAAUCUCAGGGUCGUGGGUUCGAGCCCCACGUUGGGCG +>SEQ21_27_74_+ RESULT 1 SCORE 45.0 EVALUE 3.9e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.25_AC006449.19/196857-196784_21 ORIGHEAD RF00005_rep.25 +GUUCGGCUGUUAACCGAAAGGUUGGUGGUUCGAGCCCACCCAGGGACG +>SEQ19_27_82_+ RESULT 1 SCORE 49.1 EVALUE 6.9e-09 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.23_M16479.1/42-123_19 ORIGHEAD RF00005_rep.23 +AGCAGACUCUAAAUCUGCCGUCAUCGACUUCGAAGGUUCGAAUCCUUCCCCCACCA +>SEQ14_26_66_+ RESULT 1 SCORE 33.9 EVALUE 2e-06 CLUSTER 1.1 LOC MISS ORIGID RF00005_rep.19_AF134583.1/1816-1744_14 ORIGHEAD RF00005_rep.19 +GCUUAGCUGUUAACUAAGUGUUUGUGGGUUUAAGUCCCAUU +>SEQ13_26_82_+ RESULT 1 SCORE 46.5 EVALUE 2e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.18_AL021918.1/81116-81197_13 ORIGHEAD RF00005_rep.18 +GAUGGACUAGAAAUCCAUUGGGGUUUCCCCACGCAGGUUCGAAUCCUGCCGACUACG +>SEQ20_25_72_+ RESULT 1 SCORE 40.8 EVALUE 2.4e-07 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.24_AC004941.2/32735-32806_20 ORIGHEAD RF00005_rep.24 +AUUUGACUGCAGAUCAAGAGGUCCCUGGUUCAAAUCCAGGUGCCCCCU +>SEQ40_21_66_+ RESULT 1 SCORE 30.4 EVALUE 2.1e-05 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.42_AF347015.1/5827-5762_40 ORIGHEAD RF00005_rep.42 +AUUGAAUUGCAAAUUCGAAGAAGCAGCUUCAAACCUGCCGGGGCUU +>SEQ4_26_73_+ RESULT 1 SCORE 44.8 EVALUE 4.4e-08 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.0_M15347.1/1040-968_4 ORIGHEAD RF00005_rep.0 +ACUGGUCUUGUAAACCAGGGGUCGCGAGUUCAAUUCUCGCUGGGGCUU +>SEQ50_26_73_+ RESULT 1 SCORE 48.8 EVALUE 7.8e-09 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.9_AP000442.6/2022-1950_50 ORIGHEAD RF00005_rep.9 +AUCAGACUUUUAAUCUGAGGGUCCAGGGUUCAAGUCCCUGUUCGGGCG +>SEQ16_25_72_+ RESULT 1 SCORE 40.4 EVALUE 2.8e-07 CLUSTER 1.2 LOC MISS ORIGID RF00005_rep.20_AL671879.2/100356-100285_16 ORIGHEAD RF00005_rep.20 +GCAUGCUUCGCAUGUAUGAGGCCCCGGGUUCGAUCCCCGGCAUCUCCA +>SEQ29_21_59_+ RESULT 1 SCORE 24.3 EVALUE 0.0002 CLUSTER 1.1 LOC MISS ORIGID RF00005_rep.32_AF347015.1/5892-5827_29 ORIGHEAD RF00005_rep.32 +CAUUGGACUGUAAAUCUAAAGACAGGGGUUAGGCCUCUU
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/1.cluster.top5.alirna.ps Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,417 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: ViennaRNA-2.3.1 +%%CreationDate: Tue May 30 20:24:19 2017 +%%Title: RNA Secondary Structure Plot +%%BoundingBox: 0 0 700 700 +%%DocumentFonts: Helvetica +%%Pages: 1 +%%EndComments + +%Options: --noLP +% to switch off outline pairs of sequence comment or +% delete the appropriate line near the end of the file + +%%BeginProlog +/RNAplot 100 dict def +RNAplot begin +/fsize 14 def +/outlinecolor {0.2 setgray} bind def +/paircolor {0.2 setgray} bind def +/seqcolor {0 setgray} bind def +/cshow { dup stringwidth pop -2 div fsize -3 div rmoveto show} bind def +/min { 2 copy gt { exch } if pop } bind def +/max { 2 copy lt { exch } if pop } bind def +/arccoords { % i j arccoords + % puts optimal x1 y1 x2 y2 coordinates used in bezier curves from i to j + % onto the stack + dup 3 -1 roll dup 4 -1 roll lt dup dup 5 2 roll {exch} if + dup 3 -1 roll dup 3 -1 roll exch sub 1 sub dup + 4 -2 roll 5 -1 roll {exch} if 4 2 roll + sequence length dup 2 div exch 3 1 roll lt + {exch 5 -1 roll pop 4 -2 roll exch 4 2 roll} + { 4 2 roll 5 -1 roll dup 6 1 roll {exch} if + 4 -2 roll exch pop dup 3 -1 roll dup 4 1 roll + exch add 4 -1 roll dup 5 1 roll sub 1 sub + 5 -1 roll not {4 -2 roll exch 4 2 roll} if + }ifelse + % compute the scalingfactor and prepare (1-sf) and sf*r + 2 mul exch cpr 3 1 roll div dup + 3 -1 roll mul exch 1 exch sub exch + % compute the coordinates + 3 -1 roll 1 sub coor exch get aload pop % get coord for i + 4 -1 roll dup 5 1 roll mul 3 -1 roll dup 4 1 roll add exch % calculate y1 + 4 -1 roll dup 5 1 roll mul 3 -1 roll dup 4 1 roll add exch % calculate x1 + 5 -1 roll 1 sub coor exch get aload pop % get coord for j + % duplicate j coord + dup 3 -1 roll dup 4 1 roll exch 8 2 roll + 6 -1 roll dup 7 1 roll mul 5 -1 roll dup 6 1 roll add exch % calculate y2 + 6 -1 roll mul 5 -1 roll add exch % calculate x2 + 6 -2 roll % reorder +} bind def +/drawoutline { + gsave outlinecolor newpath + coor 0 get aload pop 0.8 0 360 arc % draw 5' circle of 1st sequence + currentdict /cutpoint known % check if cutpoint is defined + {coor 0 cutpoint getinterval + {aload pop lineto} forall % draw outline of 1st sequence + coor cutpoint 1 add get aload pop + 2 copy moveto 0.8 0 360 arc % draw 5' circle of 2nd sequence + coor cutpoint 1 add coor length cutpoint 1 add sub getinterval + {aload pop lineto} forall} % draw outline of 2nd sequence + {coor {aload pop lineto} forall} % draw outline as a whole + ifelse + stroke grestore +} bind def +/drawpairs { + paircolor + 0.7 setlinewidth + [9 3.01] 9 setdash + newpath + pairs {aload pop + currentdict (cpr) known + { exch dup + coor exch 1 sub get aload pop moveto + exch arccoords curveto + } + { coor exch 1 sub get aload pop moveto + coor exch 1 sub get aload pop lineto + }ifelse + } forall + stroke +} bind def +% draw bases +/drawbases { + [] 0 setdash + seqcolor + 0 + coor { + aload pop moveto + dup sequence exch 1 getinterval cshow + 1 add + } forall + pop +} bind def + +/init { + /Helvetica findfont fsize scalefont setfont + 1 setlinejoin + 1 setlinecap + 0.8 setlinewidth + % find the coordinate range + /xmax -1000 def /xmin 10000 def + /ymax -1000 def /ymin 10000 def + coor { + aload pop + dup ymin lt {dup /ymin exch def} if + dup ymax gt {/ymax exch def} {pop} ifelse + dup xmin lt {dup /xmin exch def} if + dup xmax gt {/xmax exch def} {pop} ifelse + } forall + /size {xmax xmin sub ymax ymin sub max} bind def + /width {xmax xmin sub} bind def + /height {ymax ymin sub} bind def + 10 10 translate + 680 size 10 add div dup scale + size width sub width xmin sub xmax sub add 2 div 5 add + size height sub height ymin sub ymax sub add 2 div 5 add + translate +} bind def +end +RNAplot begin +% extra definitions for standard anotations +/min { 2 copy gt { exch } if pop } bind def +/BLACK { 0 0 0 } def +/RED { 1 0 0 } def +/GREEN { 0 1 0 } def +/BLUE { 0 0 1 } def +/WHITE { 1 1 1 } def +/LabelFont { % font size LabelFont + exch findfont exch fsize mul scalefont setfont +} bind def +/Label { % i dx dy (text) Label + % write text at base i plus offset dx, dy + 4 3 roll 1 sub coor exch get aload pop moveto + 3 1 roll fsize mul exch fsize mul exch rmoveto + show +} bind def +/cmark { % i cmark draw circle around base i + newpath 1 sub coor exch get aload pop + fsize 2 div 0 360 arc stroke +} bind def +/gmark { % i j c gmark + % draw basepair i,j with c counter examples in gray + gsave + 3 min [0 0.33 0.66 0.9] exch get setgray + 1 sub dup coor exch get aload pop moveto + sequence exch 1 getinterval cshow + 1 sub dup coor exch get aload pop moveto + sequence exch 1 getinterval cshow + grestore +} bind def +/segmark { % f i j lw r g b segmark + % mark segment [i,j] with outline width lw and color rgb + % use omark and Fomark instead + gsave + setrgbcolor setlinewidth + newpath + 1 sub exch 1 sub dup + coor exch get aload pop moveto + currentdict (cpr) known + { + 3 -1 roll dup 4 1 roll dup + { + 3 1 roll dup 3 -1 roll dup + 4 1 roll exch 5 2 roll exch + } + { + 3 1 roll exch + } ifelse + 1 exch { coor exch get aload pop lineto } for + { + dup 3 1 roll 1 add exch 1 add arccoords pop pop + 4 2 roll 5 -1 roll coor exch get aload pop curveto + } if + } + { + exch 1 exch { + coor exch get aload pop lineto + } for + } ifelse + { closepath fill } if stroke + grestore +} bind def +/omark { % i j lw r g b omark + % stroke segment [i..j] with linewidth lw, color rgb + false 7 1 roll segmark +} bind def +/Fomark { % i j r g b Fomark + % fill segment [i..j] with color rgb + % should precede drawbases + 1 4 1 roll true 7 1 roll segmark +} bind def +/BFmark{ % i j k l r g b BFmark + % fill block between pairs (i,j) and (k,l) with color rgb + % should precede drawbases + gsave + setrgbcolor + newpath + currentdict (cpr) known + { + dup 1 sub coor exch get aload pop moveto % move to l + dup 1 sub 4 -1 roll dup 5 1 roll 1 sub 1 exch + { coor exch get aload pop lineto } for % lines from l to j + 3 -1 roll 4 -1 roll dup 5 1 roll arccoords curveto % curve from j to i + exch dup 4 -1 roll 1 sub exch 1 sub 1 exch + { coor exch get aload pop lineto } for % lines from i to k + exch arccoords curveto% curve from k to l + } + { exch 4 3 roll exch 1 sub exch 1 sub dup + coor exch get aload pop moveto + exch 1 exch { coor exch get aload pop lineto } for + exch 1 sub exch 1 sub dup + coor exch get aload pop lineto + exch 1 exch { coor exch get aload pop lineto } for + } ifelse + closepath fill stroke + grestore +} bind def +/hsb { + dup 0.3 mul 1 exch sub sethsbcolor +} bind def +/colorpair { % i j hue sat colorpair + % draw basepair i,j in color + % 1 index 0.00 ne { + gsave + newpath + hsb + fsize setlinewidth + currentdict (cpr) known + { + exch dup + coor exch 1 sub get aload pop moveto + exch arccoords curveto + } + { 1 sub coor exch get aload pop moveto + 1 sub coor exch get aload pop lineto + } ifelse + stroke + grestore + % } if +} bind def +end + +%%EndProlog +RNAplot begin +% data start here +/sequence (\ +GUUUCCGUAGUGUAGUGGUUAUCACGUUCGCCUCACACGCGAAAGGU_________CCCCGGUUCGAAACCGGGCGGAAACA\ +) def +/coor [ +[126.01442719 205.80749512] +[125.44680786 190.81823730] +[124.87918091 175.82897949] +[124.31156158 160.83972168] +[123.74394226 145.85047913] +[123.17631531 130.86122131] +[122.60869598 115.87195587] +[107.91925812 124.77088928] +[91.87033844 122.99333954] +[80.97422791 112.51052094] +[66.42591858 116.16383362] +[51.87760544 119.81713867] +[47.74618530 134.60993958] +[36.76065063 145.34370422] +[21.87605476 149.13108826] +[7.09627628 144.95332336] +[-3.60299659 133.93420410] +[-7.34371328 119.03780365] +[-3.11964059 104.27119446] +[7.93296814 93.60651398] +[22.84101677 89.91250610] +[37.59431458 94.18284607] +[48.22429657 105.26882935] +[62.77260971 101.61552429] +[77.32091522 97.96221161] +[93.74244690 75.59227753] +[122.92980194 84.59557343] +[115.84320831 71.37512970] +[108.75661469 58.15468216] +[101.67002106 44.93423462] +[94.58342743 31.71378899] +[79.24071503 28.69135094] +[69.47061157 16.48155785] +[69.88626099 0.84949923] +[80.29140472 -10.82384396] +[95.77305603 -13.02667522] +[109.02124786 -4.71888638] +[113.78059387 10.17683983] +[107.80387115 24.62719536] +[114.89046478 37.84764099] +[121.97705841 51.06808853] +[129.06365967 64.28853607] +[136.15025330 77.50897980] +[130.14912415 63.76174545] +[129.68310547 48.76898575] +[134.81886292 34.67558289] +[144.82167053 23.49776077] +[158.26051331 16.83462524] +[173.21282959 15.63941574] +[187.53950500 20.08312035] +[199.19094849 29.53001785] +[206.50028992 42.62862396] +[208.42185974 57.50503159] +[204.68074036 72.03101349] +[195.81214905 84.12845612] +[183.08483887 92.06668854] +[168.31959534 94.71005249] +[153.62709045 91.67971802] +[168.02673340 95.88093567] +[182.42637634 100.08216095] +[196.82603455 104.28337860] +[211.22567749 108.48459625] +[224.12878418 99.65035248] +[239.68653870 101.22833252] +[250.55305481 112.47345734] +[251.59750366 128.07612610] +[242.32670593 140.66921997] +[227.11805725 144.30670166] +[213.15261841 137.27102661] +[207.02444458 122.88423920] +[192.62480164 118.68302155] +[178.22515869 114.48180389] +[163.82551575 110.28057861] +[149.42587280 106.07936096] +[137.59794617 115.30433655] +[138.16557312 130.29359436] +[138.73320007 145.28285217] +[139.30081177 160.27210999] +[139.86843872 175.26136780] +[140.43606567 190.25062561] +[141.00367737 205.23986816] +[143.92169189 224.40065002] +] def +/pairs [ +[1 81] +[2 80] +[3 79] +[4 78] +[5 77] +[6 76] +[7 75] +[10 25] +[11 24] +[12 23] +[27 43] +[28 42] +[29 41] +[30 40] +[31 39] +[58 74] +[59 73] +[60 72] +[61 71] +[62 70] +] def + +init + +% Start Annotations +1 81 0.0 1 colorpair +2 80 0.16 1 colorpair +3 79 0.16 1 colorpair +4 78 0.16 1 colorpair +5 77 0.16 1 colorpair +6 76 0.32 1 colorpair +7 75 0.16 1 colorpair +10 25 0.0 1 colorpair +11 24 0.16 1 colorpair +12 23 0.16 1 colorpair +27 43 0.16 1 colorpair +28 42 0.0 1 colorpair +29 41 0.16 1 colorpair +30 40 0.0 1 colorpair +31 39 0.16 1 colorpair +58 74 0.16 1 colorpair +59 73 0.0 1 colorpair +60 72 0.16 1 colorpair +61 71 0.0 1 colorpair +62 70 0.0 1 colorpair + +% End Annotations +% switch off outline pairs or bases by removing these lines +drawoutline +drawpairs +drawbases +% Start Annotations +2 cmark +80 cmark +3 cmark +79 cmark +4 cmark +78 cmark +5 cmark +77 cmark +6 cmark +76 cmark +7 cmark +75 cmark +11 cmark +24 cmark +12 cmark +23 cmark +27 cmark +43 cmark +29 cmark +41 cmark +31 cmark +39 cmark +58 cmark +74 cmark +60 cmark +72 cmark + +% End Annotations +% show it +showpage +end +%%EOF
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/1.cluster.top5.aln.ps Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,344 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 0 0 498 181 +%%EndComments +% draws Vienna RNA like colored boxes +/box { % x1 y1 x2 y2 hue saturation + gsave + dup 0.3 mul 1 exch sub sethsbcolor + exch 3 index sub exch 2 index sub rectfill + grestore +} def +% draws a box in current color +/box2 { % x1 y1 x2 y2 + exch 3 index sub exch 2 index sub rectfill +} def +/string { % (Text) x y + 6 add + moveto + show +} def +0 181 translate +1 -1 scale +/Courier findfont +[10 0 0 -10 0 0] makefont setfont +96.0 11.5 102.0 20.0 0.0 1 box +96.0 20.0 102.0 28.5 0.0 1 box +96.0 28.5 102.0 37.0 0.0 1 box +96.0 37.0 102.0 45.5 0.0 1 box +96.0 45.5 102.0 54.0 0.0 1 box +216.0 101.0 222.0 109.5 0.0 1 box +216.0 109.5 222.0 118.0 0.0 1 box +216.0 118.0 222.0 126.5 0.0 1 box +216.0 126.5 222.0 135.0 0.0 1 box +216.0 135.0 222.0 143.5 0.0 1 box +102.0 11.5 108.0 20.0 0.16 1 box +102.0 20.0 108.0 28.5 0.16 1 box +102.0 28.5 108.0 37.0 0.16 1 box +102.0 37.0 108.0 45.5 0.16 1 box +102.0 45.5 108.0 54.0 0.16 1 box +210.0 101.0 216.0 109.5 0.16 1 box +210.0 109.5 216.0 118.0 0.16 1 box +210.0 118.0 216.0 126.5 0.16 1 box +210.0 126.5 216.0 135.0 0.16 1 box +210.0 135.0 216.0 143.5 0.16 1 box +108.0 11.5 114.0 20.0 0.16 1 box +108.0 20.0 114.0 28.5 0.16 1 box +108.0 28.5 114.0 37.0 0.16 1 box +108.0 37.0 114.0 45.5 0.16 1 box +108.0 45.5 114.0 54.0 0.16 1 box +204.0 101.0 210.0 109.5 0.16 1 box +204.0 109.5 210.0 118.0 0.16 1 box +204.0 118.0 210.0 126.5 0.16 1 box +204.0 126.5 210.0 135.0 0.16 1 box +204.0 135.0 210.0 143.5 0.16 1 box +114.0 11.5 120.0 20.0 0.16 1 box +114.0 20.0 120.0 28.5 0.16 1 box +114.0 28.5 120.0 37.0 0.16 1 box +114.0 37.0 120.0 45.5 0.16 1 box +114.0 45.5 120.0 54.0 0.16 1 box +198.0 101.0 204.0 109.5 0.16 1 box +198.0 109.5 204.0 118.0 0.16 1 box +198.0 118.0 204.0 126.5 0.16 1 box +198.0 126.5 204.0 135.0 0.16 1 box +198.0 135.0 204.0 143.5 0.16 1 box +120.0 11.5 126.0 20.0 0.16 1 box +120.0 20.0 126.0 28.5 0.16 1 box +120.0 28.5 126.0 37.0 0.16 1 box +120.0 37.0 126.0 45.5 0.16 1 box +120.0 45.5 126.0 54.0 0.16 1 box +192.0 101.0 198.0 109.5 0.16 1 box +192.0 109.5 198.0 118.0 0.16 1 box +192.0 118.0 198.0 126.5 0.16 1 box +192.0 126.5 198.0 135.0 0.16 1 box +192.0 135.0 198.0 143.5 0.16 1 box +126.0 11.5 132.0 20.0 0.32 1 box +126.0 20.0 132.0 28.5 0.32 1 box +126.0 28.5 132.0 37.0 0.32 1 box +126.0 37.0 132.0 45.5 0.32 1 box +126.0 45.5 132.0 54.0 0.32 1 box +186.0 101.0 192.0 109.5 0.32 1 box +186.0 109.5 192.0 118.0 0.32 1 box +186.0 118.0 192.0 126.5 0.32 1 box +186.0 126.5 192.0 135.0 0.32 1 box +186.0 135.0 192.0 143.5 0.32 1 box +132.0 11.5 138.0 20.0 0.16 1 box +132.0 20.0 138.0 28.5 0.16 1 box +132.0 28.5 138.0 37.0 0.16 1 box +132.0 37.0 138.0 45.5 0.16 1 box +132.0 45.5 138.0 54.0 0.16 1 box +180.0 101.0 186.0 109.5 0.16 1 box +180.0 109.5 186.0 118.0 0.16 1 box +180.0 118.0 186.0 126.5 0.16 1 box +180.0 126.5 186.0 135.0 0.16 1 box +180.0 135.0 186.0 143.5 0.16 1 box +150.0 11.5 156.0 20.0 0.0 1 box +150.0 20.0 156.0 28.5 0.0 1 box +150.0 28.5 156.0 37.0 0.0 1 box +150.0 37.0 156.0 45.5 0.0 1 box +150.0 45.5 156.0 54.0 0.0 1 box +240.0 11.5 246.0 20.0 0.0 1 box +240.0 20.0 246.0 28.5 0.0 1 box +240.0 28.5 246.0 37.0 0.0 1 box +240.0 37.0 246.0 45.5 0.0 1 box +240.0 45.5 246.0 54.0 0.0 1 box +156.0 11.5 162.0 20.0 0.16 1 box +156.0 20.0 162.0 28.5 0.16 1 box +156.0 28.5 162.0 37.0 0.16 1 box +156.0 37.0 162.0 45.5 0.16 1 box +156.0 45.5 162.0 54.0 0.16 1 box +234.0 11.5 240.0 20.0 0.16 1 box +234.0 20.0 240.0 28.5 0.16 1 box +234.0 28.5 240.0 37.0 0.16 1 box +234.0 37.0 240.0 45.5 0.16 1 box +234.0 45.5 240.0 54.0 0.16 1 box +162.0 11.5 168.0 20.0 0.16 1 box +162.0 20.0 168.0 28.5 0.16 1 box +162.0 28.5 168.0 37.0 0.16 1 box +162.0 37.0 168.0 45.5 0.16 1 box +162.0 45.5 168.0 54.0 0.16 1 box +228.0 11.5 234.0 20.0 0.16 1 box +228.0 20.0 234.0 28.5 0.16 1 box +228.0 28.5 234.0 37.0 0.16 1 box +228.0 37.0 234.0 45.5 0.16 1 box +228.0 45.5 234.0 54.0 0.16 1 box +252.0 11.5 258.0 20.0 0.16 1 box +252.0 20.0 258.0 28.5 0.16 1 box +252.0 28.5 258.0 37.0 0.16 1 box +252.0 37.0 258.0 45.5 0.16 1 box +252.0 45.5 258.0 54.0 0.16 1 box +348.0 11.5 354.0 20.0 0.16 1 box +348.0 20.0 354.0 28.5 0.16 1 box +348.0 28.5 354.0 37.0 0.16 1 box +348.0 37.0 354.0 45.5 0.16 1 box +348.0 45.5 354.0 54.0 0.16 1 box +258.0 11.5 264.0 20.0 0.0 1 box +258.0 20.0 264.0 28.5 0.0 1 box +258.0 28.5 264.0 37.0 0.0 1 box +258.0 37.0 264.0 45.5 0.0 1 box +258.0 45.5 264.0 54.0 0.0 1 box +342.0 11.5 348.0 20.0 0.0 1 box +342.0 20.0 348.0 28.5 0.0 1 box +342.0 28.5 348.0 37.0 0.0 1 box +342.0 37.0 348.0 45.5 0.0 1 box +342.0 45.5 348.0 54.0 0.0 1 box +264.0 11.5 270.0 20.0 0.16 1 box +264.0 20.0 270.0 28.5 0.16 1 box +264.0 28.5 270.0 37.0 0.16 1 box +264.0 37.0 270.0 45.5 0.16 1 box +264.0 45.5 270.0 54.0 0.16 1 box +336.0 11.5 342.0 20.0 0.16 1 box +336.0 20.0 342.0 28.5 0.16 1 box +336.0 28.5 342.0 37.0 0.16 1 box +336.0 37.0 342.0 45.5 0.16 1 box +336.0 45.5 342.0 54.0 0.16 1 box +270.0 11.5 276.0 20.0 0.0 1 box +270.0 20.0 276.0 28.5 0.0 1 box +270.0 28.5 276.0 37.0 0.0 1 box +270.0 37.0 276.0 45.5 0.0 1 box +270.0 45.5 276.0 54.0 0.0 1 box +330.0 11.5 336.0 20.0 0.0 1 box +330.0 20.0 336.0 28.5 0.0 1 box +330.0 28.5 336.0 37.0 0.0 1 box +330.0 37.0 336.0 45.5 0.0 1 box +330.0 45.5 336.0 54.0 0.0 1 box +276.0 11.5 282.0 20.0 0.16 1 box +276.0 20.0 282.0 28.5 0.16 1 box +276.0 28.5 282.0 37.0 0.16 1 box +276.0 37.0 282.0 45.5 0.16 1 box +276.0 45.5 282.0 54.0 0.16 1 box +324.0 11.5 330.0 20.0 0.16 1 box +324.0 20.0 330.0 28.5 0.16 1 box +324.0 28.5 330.0 37.0 0.16 1 box +324.0 37.0 330.0 45.5 0.16 1 box +324.0 45.5 330.0 54.0 0.16 1 box +438.0 11.5 444.0 20.0 0.16 1 box +438.0 20.0 444.0 28.5 0.16 1 box +438.0 28.5 444.0 37.0 0.16 1 box +438.0 37.0 444.0 45.5 0.16 1 box +438.0 45.5 444.0 54.0 0.16 1 box +174.0 101.0 180.0 109.5 0.16 1 box +174.0 109.5 180.0 118.0 0.16 1 box +174.0 118.0 180.0 126.5 0.16 1 box +174.0 126.5 180.0 135.0 0.16 1 box +174.0 135.0 180.0 143.5 0.16 1 box +444.0 11.5 450.0 20.0 0.0 1 box +444.0 20.0 450.0 28.5 0.0 1 box +444.0 28.5 450.0 37.0 0.0 1 box +444.0 37.0 450.0 45.5 0.0 1 box +444.0 45.5 450.0 54.0 0.0 1 box +168.0 101.0 174.0 109.5 0.0 1 box +168.0 109.5 174.0 118.0 0.0 1 box +168.0 118.0 174.0 126.5 0.0 1 box +168.0 126.5 174.0 135.0 0.0 1 box +168.0 135.0 174.0 143.5 0.0 1 box +450.0 11.5 456.0 20.0 0.16 1 box +450.0 20.0 456.0 28.5 0.16 1 box +450.0 28.5 456.0 37.0 0.16 1 box +450.0 37.0 456.0 45.5 0.16 1 box +450.0 45.5 456.0 54.0 0.16 1 box +162.0 101.0 168.0 109.5 0.16 1 box +162.0 109.5 168.0 118.0 0.16 1 box +162.0 118.0 168.0 126.5 0.16 1 box +162.0 126.5 168.0 135.0 0.16 1 box +162.0 135.0 168.0 143.5 0.16 1 box +96.0 101.0 102.0 109.5 0.0 1 box +96.0 109.5 102.0 118.0 0.0 1 box +96.0 118.0 102.0 126.5 0.0 1 box +96.0 126.5 102.0 135.0 0.0 1 box +96.0 135.0 102.0 143.5 0.0 1 box +156.0 101.0 162.0 109.5 0.0 1 box +156.0 109.5 162.0 118.0 0.0 1 box +156.0 118.0 162.0 126.5 0.0 1 box +156.0 126.5 162.0 135.0 0.0 1 box +156.0 135.0 162.0 143.5 0.0 1 box +102.0 101.0 108.0 109.5 0.0 1 box +102.0 109.5 108.0 118.0 0.0 1 box +102.0 118.0 108.0 126.5 0.0 1 box +102.0 126.5 108.0 135.0 0.0 1 box +102.0 135.0 108.0 143.5 0.0 1 box +150.0 101.0 156.0 109.5 0.0 1 box +150.0 109.5 156.0 118.0 0.0 1 box +150.0 118.0 156.0 126.5 0.0 1 box +150.0 126.5 156.0 135.0 0.0 1 box +150.0 135.0 156.0 143.5 0.0 1 box +0 setgray +(\(\(\(\(\(\(\(..\(\(\(..........\)\)\).\(\(\(\(\(.......\)\)\)\)\)..............\(\(\() 96.0 2.0 string +(SEQ31_1_73_+) 6.0 12.5 string +(GUUUCCGUAGUGUAGUGGUUAUCACGUUCGCCUCACACGCGAAAGGU---------CCCC) 96.0 12.5 string +(51) 462.0 12.5 string +(SEQ9_1_73_+) 6.0 21.0 string +(GCUUCUGUAGUGUAGUGGUUAUCACGUUCGCCUCACACGCGAAAGGU---------CCCC) 96.0 21.0 string +(51) 462.0 21.0 string +(SEQ32_1_73_+) 6.0 29.5 string +(GUUUCCGUAGUGUAGCGGUUAUCACAUUCGCCUCACACGCGAAAGGU---------CCCC) 96.0 29.5 string +(51) 462.0 29.5 string +(SEQ11_1_82_+) 6.0 38.0 string +(GCAGCGAUGGCCGAGUGGUUAAGGCGUUGGACUUGAAAUCCAAUGGGGUCUCCCCGCGCA) 96.0 38.0 string +(60) 462.0 38.0 string +(SEQ13_1_82_+) 6.0 46.5 string +(GUAGUCGUGGCCGAGUGGUUAAGGCGAUGGACUAGAAAUCCAUUGGGGUUUCCCCACGCA) 96.0 46.5 string +(60) 462.0 46.5 string +(.........10........20........30........40........50.........) 96.0 57.0 string +0.6 setgray +96.0 68.8 102.0 85.0 box2 +102.0 76.9 108.0 85.0 box2 +108.0 76.9 114.0 85.0 box2 +114.0 76.9 120.0 85.0 box2 +120.0 72.8 126.0 85.0 box2 +126.0 76.9 132.0 85.0 box2 +132.0 72.8 138.0 85.0 box2 +138.0 68.8 144.0 85.0 box2 +144.0 76.9 150.0 85.0 box2 +150.0 68.8 156.0 85.0 box2 +156.0 76.9 162.0 85.0 box2 +162.0 76.9 168.0 85.0 box2 +168.0 76.9 174.0 85.0 box2 +174.0 68.8 180.0 85.0 box2 +180.0 68.8 186.0 85.0 box2 +186.0 72.8 192.0 85.0 box2 +192.0 68.8 198.0 85.0 box2 +198.0 68.8 204.0 85.0 box2 +204.0 68.8 210.0 85.0 box2 +210.0 68.8 216.0 85.0 box2 +216.0 68.8 222.0 85.0 box2 +222.0 76.9 228.0 85.0 box2 +228.0 76.9 234.0 85.0 box2 +234.0 76.9 240.0 85.0 box2 +240.0 68.8 246.0 85.0 box2 +246.0 72.8 252.0 85.0 box2 +252.0 72.8 258.0 85.0 box2 +258.0 68.8 264.0 85.0 box2 +264.0 76.9 270.0 85.0 box2 +270.0 68.8 276.0 85.0 box2 +276.0 76.9 282.0 85.0 box2 +282.0 68.8 288.0 85.0 box2 +288.0 68.8 294.0 85.0 box2 +294.0 76.9 300.0 85.0 box2 +300.0 76.9 306.0 85.0 box2 +306.0 76.9 312.0 85.0 box2 +312.0 68.8 318.0 85.0 box2 +318.0 76.9 324.0 85.0 box2 +324.0 76.9 330.0 85.0 box2 +330.0 68.8 336.0 85.0 box2 +336.0 76.9 342.0 85.0 box2 +342.0 68.8 348.0 85.0 box2 +348.0 72.8 354.0 85.0 box2 +354.0 76.9 360.0 85.0 box2 +360.0 68.8 366.0 85.0 box2 +366.0 68.8 372.0 85.0 box2 +372.0 76.9 378.0 85.0 box2 +378.0 84.0 384.0 85.0 box2 +384.0 84.0 390.0 85.0 box2 +390.0 84.0 396.0 85.0 box2 +396.0 84.0 402.0 85.0 box2 +402.0 84.0 408.0 85.0 box2 +408.0 84.0 414.0 85.0 box2 +414.0 84.0 420.0 85.0 box2 +420.0 84.0 426.0 85.0 box2 +426.0 84.0 432.0 85.0 box2 +432.0 68.8 438.0 85.0 box2 +438.0 76.9 444.0 85.0 box2 +444.0 68.8 450.0 85.0 box2 +450.0 76.9 456.0 85.0 box2 +0 setgray +(\(\(.......\)\)\)\)\)\)\)\)\)\)\)\).) 96.0 91.5 string +(SEQ31_1_73_+) 6.0 102.0 string +(GGUUCGAAACCGGGCGGAAACA) 96.0 102.0 string +(73) 234.0 102.0 string +(SEQ9_1_73_+) 6.0 110.5 string +(GGUUCGAAACCGGGCAGAAGCA) 96.0 110.5 string +(73) 234.0 110.5 string +(SEQ32_1_73_+) 6.0 119.0 string +(GGUUCGAUCCCGGGCGGAAACA) 96.0 119.0 string +(73) 234.0 119.0 string +(SEQ11_1_82_+) 6.0 127.5 string +(GGUUCGAACCCUGCUCGCUGCG) 96.0 127.5 string +(82) 234.0 127.5 string +(SEQ13_1_82_+) 6.0 136.0 string +(GGUUCGAAUCCUGCCGACUACG) 96.0 136.0 string +(82) 234.0 136.0 string +(.........70........80.) 96.0 146.5 string +0.6 setgray +96.0 158.2 102.0 174.5 box2 +102.0 158.2 108.0 174.5 box2 +108.0 158.2 114.0 174.5 box2 +114.0 158.2 120.0 174.5 box2 +120.0 158.2 126.0 174.5 box2 +126.0 158.2 132.0 174.5 box2 +132.0 158.2 138.0 174.5 box2 +138.0 162.3 144.0 174.5 box2 +144.0 170.4 150.0 174.5 box2 +150.0 158.2 156.0 174.5 box2 +156.0 158.2 162.0 174.5 box2 +162.0 166.4 168.0 174.5 box2 +168.0 158.2 174.0 174.5 box2 +174.0 166.4 180.0 174.5 box2 +180.0 162.3 186.0 174.5 box2 +186.0 166.4 192.0 174.5 box2 +192.0 162.3 198.0 174.5 box2 +198.0 166.4 204.0 174.5 box2 +204.0 166.4 210.0 174.5 box2 +210.0 166.4 216.0 174.5 box2 +216.0 158.2 222.0 174.5 box2 +222.0 166.4 228.0 174.5 box2 +showpage
--- a/test-data/1.cluster.top5.result.aln_1.R2R.sto.pdf Fri Feb 23 10:46:41 2018 -0500 +++ b/test-data/1.cluster.top5.result.aln_1.R2R.sto.pdf Sat Oct 27 13:23:06 2018 -0400 @@ -71,12 +71,6 @@ 92.815958 30.658227 l S 72 w -81.834458 40.910727 m -99.909458 40.910727 l -99.909458 35.525727 l -81.834458 35.525727 l -h -f 1.44 w 88.927958 38.218227 m 92.815958 38.218227 l @@ -864,7 +858,7 @@ << /Font <</FH 5 0 R>> /ProcSet[/PDF/Text/ImageC]/XObject << >>/ExtGState<</GS0 10 0 R>>/Properties<</MC0<</Color[20224.0 -32768.0 -1.0]/Title(Layer 1)/Visible true/Preview true/Editable true/Printed true/Dimmed true>>>>>> endobj 8 0 obj -14624 +14532 endobj 1 0 obj << @@ -889,21 +883,21 @@ xref 0 11 0000000000 65535 f -0000015316 00000 n -0000015439 00000 n -0000015381 00000 n +0000015224 00000 n +0000015347 00000 n +0000015289 00000 n 0000000116 00000 n 0000000009 00000 n 0000000152 00000 n 0000000270 00000 n -0000015295 00000 n -0000015057 00000 n -0000014945 00000 n +0000015203 00000 n +0000014965 00000 n +0000014853 00000 n trailer << /Size 11 /Root 1 0 R >> startxref -15485 +15393 %%EOF
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/2.cluster.all Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,4 @@ +SEQ74#1#100#+ RESULT 2 CM_SCORE 163.2 MODEL 1.2 ORIGID RF00618_rep.2_U62822.1/2-128_74 ORIGHEAD RF00618 +SEQ72#1#100#+ RESULT 2 CM_SCORE 163.1 MODEL 1.2 ORIGID RF00618_rep.0_AL135914.25/92223-92098_72 ORIGHEAD RF00618 +SEQ73#1#100#+ RESULT 2 CM_SCORE 161.5 MODEL 1.2 ORIGID RF00618_rep.1_AL161445.10/77816-77941_73 ORIGHEAD RF00618 +SEQ75#1#100#+ RESULT 2 CM_SCORE 160.5 MODEL 1.2 ORIGID RF00618_rep.3_AL389925.10/20736-20611_75 ORIGHEAD RF00618
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/2.cluster.top5.alirna.ps Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,425 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: ViennaRNA-2.3.1 +%%CreationDate: Tue May 30 20:24:21 2017 +%%Title: RNA Secondary Structure Plot +%%BoundingBox: 0 0 700 700 +%%DocumentFonts: Helvetica +%%Pages: 1 +%%EndComments + +%Options: --noLP +% to switch off outline pairs of sequence comment or +% delete the appropriate line near the end of the file + +%%BeginProlog +/RNAplot 100 dict def +RNAplot begin +/fsize 14 def +/outlinecolor {0.2 setgray} bind def +/paircolor {0.2 setgray} bind def +/seqcolor {0 setgray} bind def +/cshow { dup stringwidth pop -2 div fsize -3 div rmoveto show} bind def +/min { 2 copy gt { exch } if pop } bind def +/max { 2 copy lt { exch } if pop } bind def +/arccoords { % i j arccoords + % puts optimal x1 y1 x2 y2 coordinates used in bezier curves from i to j + % onto the stack + dup 3 -1 roll dup 4 -1 roll lt dup dup 5 2 roll {exch} if + dup 3 -1 roll dup 3 -1 roll exch sub 1 sub dup + 4 -2 roll 5 -1 roll {exch} if 4 2 roll + sequence length dup 2 div exch 3 1 roll lt + {exch 5 -1 roll pop 4 -2 roll exch 4 2 roll} + { 4 2 roll 5 -1 roll dup 6 1 roll {exch} if + 4 -2 roll exch pop dup 3 -1 roll dup 4 1 roll + exch add 4 -1 roll dup 5 1 roll sub 1 sub + 5 -1 roll not {4 -2 roll exch 4 2 roll} if + }ifelse + % compute the scalingfactor and prepare (1-sf) and sf*r + 2 mul exch cpr 3 1 roll div dup + 3 -1 roll mul exch 1 exch sub exch + % compute the coordinates + 3 -1 roll 1 sub coor exch get aload pop % get coord for i + 4 -1 roll dup 5 1 roll mul 3 -1 roll dup 4 1 roll add exch % calculate y1 + 4 -1 roll dup 5 1 roll mul 3 -1 roll dup 4 1 roll add exch % calculate x1 + 5 -1 roll 1 sub coor exch get aload pop % get coord for j + % duplicate j coord + dup 3 -1 roll dup 4 1 roll exch 8 2 roll + 6 -1 roll dup 7 1 roll mul 5 -1 roll dup 6 1 roll add exch % calculate y2 + 6 -1 roll mul 5 -1 roll add exch % calculate x2 + 6 -2 roll % reorder +} bind def +/drawoutline { + gsave outlinecolor newpath + coor 0 get aload pop 0.8 0 360 arc % draw 5' circle of 1st sequence + currentdict /cutpoint known % check if cutpoint is defined + {coor 0 cutpoint getinterval + {aload pop lineto} forall % draw outline of 1st sequence + coor cutpoint 1 add get aload pop + 2 copy moveto 0.8 0 360 arc % draw 5' circle of 2nd sequence + coor cutpoint 1 add coor length cutpoint 1 add sub getinterval + {aload pop lineto} forall} % draw outline of 2nd sequence + {coor {aload pop lineto} forall} % draw outline as a whole + ifelse + stroke grestore +} bind def +/drawpairs { + paircolor + 0.7 setlinewidth + [9 3.01] 9 setdash + newpath + pairs {aload pop + currentdict (cpr) known + { exch dup + coor exch 1 sub get aload pop moveto + exch arccoords curveto + } + { coor exch 1 sub get aload pop moveto + coor exch 1 sub get aload pop lineto + }ifelse + } forall + stroke +} bind def +% draw bases +/drawbases { + [] 0 setdash + seqcolor + 0 + coor { + aload pop moveto + dup sequence exch 1 getinterval cshow + 1 add + } forall + pop +} bind def + +/init { + /Helvetica findfont fsize scalefont setfont + 1 setlinejoin + 1 setlinecap + 0.8 setlinewidth + % find the coordinate range + /xmax -1000 def /xmin 10000 def + /ymax -1000 def /ymin 10000 def + coor { + aload pop + dup ymin lt {dup /ymin exch def} if + dup ymax gt {/ymax exch def} {pop} ifelse + dup xmin lt {dup /xmin exch def} if + dup xmax gt {/xmax exch def} {pop} ifelse + } forall + /size {xmax xmin sub ymax ymin sub max} bind def + /width {xmax xmin sub} bind def + /height {ymax ymin sub} bind def + 10 10 translate + 680 size 10 add div dup scale + size width sub width xmin sub xmax sub add 2 div 5 add + size height sub height ymin sub ymax sub add 2 div 5 add + translate +} bind def +end +RNAplot begin +% extra definitions for standard anotations +/min { 2 copy gt { exch } if pop } bind def +/BLACK { 0 0 0 } def +/RED { 1 0 0 } def +/GREEN { 0 1 0 } def +/BLUE { 0 0 1 } def +/WHITE { 1 1 1 } def +/LabelFont { % font size LabelFont + exch findfont exch fsize mul scalefont setfont +} bind def +/Label { % i dx dy (text) Label + % write text at base i plus offset dx, dy + 4 3 roll 1 sub coor exch get aload pop moveto + 3 1 roll fsize mul exch fsize mul exch rmoveto + show +} bind def +/cmark { % i cmark draw circle around base i + newpath 1 sub coor exch get aload pop + fsize 2 div 0 360 arc stroke +} bind def +/gmark { % i j c gmark + % draw basepair i,j with c counter examples in gray + gsave + 3 min [0 0.33 0.66 0.9] exch get setgray + 1 sub dup coor exch get aload pop moveto + sequence exch 1 getinterval cshow + 1 sub dup coor exch get aload pop moveto + sequence exch 1 getinterval cshow + grestore +} bind def +/segmark { % f i j lw r g b segmark + % mark segment [i,j] with outline width lw and color rgb + % use omark and Fomark instead + gsave + setrgbcolor setlinewidth + newpath + 1 sub exch 1 sub dup + coor exch get aload pop moveto + currentdict (cpr) known + { + 3 -1 roll dup 4 1 roll dup + { + 3 1 roll dup 3 -1 roll dup + 4 1 roll exch 5 2 roll exch + } + { + 3 1 roll exch + } ifelse + 1 exch { coor exch get aload pop lineto } for + { + dup 3 1 roll 1 add exch 1 add arccoords pop pop + 4 2 roll 5 -1 roll coor exch get aload pop curveto + } if + } + { + exch 1 exch { + coor exch get aload pop lineto + } for + } ifelse + { closepath fill } if stroke + grestore +} bind def +/omark { % i j lw r g b omark + % stroke segment [i..j] with linewidth lw, color rgb + false 7 1 roll segmark +} bind def +/Fomark { % i j r g b Fomark + % fill segment [i..j] with color rgb + % should precede drawbases + 1 4 1 roll true 7 1 roll segmark +} bind def +/BFmark{ % i j k l r g b BFmark + % fill block between pairs (i,j) and (k,l) with color rgb + % should precede drawbases + gsave + setrgbcolor + newpath + currentdict (cpr) known + { + dup 1 sub coor exch get aload pop moveto % move to l + dup 1 sub 4 -1 roll dup 5 1 roll 1 sub 1 exch + { coor exch get aload pop lineto } for % lines from l to j + 3 -1 roll 4 -1 roll dup 5 1 roll arccoords curveto % curve from j to i + exch dup 4 -1 roll 1 sub exch 1 sub 1 exch + { coor exch get aload pop lineto } for % lines from i to k + exch arccoords curveto% curve from k to l + } + { exch 4 3 roll exch 1 sub exch 1 sub dup + coor exch get aload pop moveto + exch 1 exch { coor exch get aload pop lineto } for + exch 1 sub exch 1 sub dup + coor exch get aload pop lineto + exch 1 exch { coor exch get aload pop lineto } for + } ifelse + closepath fill stroke + grestore +} bind def +/hsb { + dup 0.3 mul 1 exch sub sethsbcolor +} bind def +/colorpair { % i j hue sat colorpair + % draw basepair i,j in color + % 1 index 0.00 ne { + gsave + newpath + hsb + fsize setlinewidth + currentdict (cpr) known + { + exch dup + coor exch 1 sub get aload pop moveto + exch arccoords curveto + } + { 1 sub coor exch get aload pop moveto + 1 sub coor exch get aload pop lineto + } ifelse + stroke + grestore + % } if +} bind def +end + +%%EndProlog +RNAplot begin +% data start here +/sequence (\ +ACCAUCCUUUUCUUGGGGUUGCACUACUGUCCAAUGAGCACAUAGUGAGGGCAGUACUGCUAACGCCUACACAACACACCCACAUCAACUAGAGCUUUGC\ +) def +/coor [ +[102.77672577 319.04476929] +[90.46199799 310.08557129] +[82.86160278 296.88882446] +[81.29235077 281.74096680] +[86.02611542 267.26647949] +[96.24275970 255.97311401] +[110.17218018 249.81752014] +[110.17218018 234.81752014] +[110.17218018 219.81752014] +[110.17218018 204.81752014] +[99.49130249 194.49984741] +[99.27762604 179.28770447] +[110.17218018 168.15458679] +[110.17218018 153.15458679] +[110.17218018 138.15458679] +[106.02764893 123.73851776] +[98.06128693 111.02880096] +[89.89822388 98.44451141] +[81.54043579 85.98868561] +[73.18265533 73.53286743] +[64.63217163 61.20853424] +[55.89105606 49.01866531] +[47.14994049 36.82879639] +[32.82023239 30.12281990] +[31.69130898 15.27105904] +[22.95019341 3.08119035] +[14.20907784 -9.10867786] +[5.46796179 -21.29854774] +[-3.27315354 -33.48841476] +[-12.01426888 -45.67828369] +[-20.75538445 -57.86815262] +[-29.49650002 -70.05802155] +[-40.43203354 -69.10051727] +[-50.66823959 -72.83345032] +[-58.30468369 -80.49013519] +[-61.95487976 -90.58245850] +[-60.99773407 -101.18975830] +[-55.68206024 -110.32431030] +[-63.24930573 -123.27563477] +[-78.33963013 -128.72189331] +[-83.35356903 -143.96131897] +[-74.44485474 -157.30351257] +[-58.44750214 -158.51351929] +[-47.63329697 -146.66308594] +[-50.29797745 -130.84288025] +[-42.73073578 -117.89155579] +[-23.69388771 -114.56418610] +[-12.84335899 -98.21372986] +[-17.30663109 -78.79914093] +[-8.56551647 -66.60926819] +[0.17559953 -54.41939926] +[8.91671467 -42.22953033] +[17.65783119 -30.03966331] +[26.39894676 -17.84979439] +[35.14006042 -5.65992498] +[43.88117599 6.52994347] +[57.58565903 12.36401939] +[59.33980942 28.08768082] +[68.08092499 40.27754974] +[76.82203674 52.46741867] +[83.39369965 56.13331604] +[85.63847351 65.17508698] +[93.99625397 77.63090515] +[102.35404205 90.08672333] +[109.22463226 94.59117126] +[110.77100372 103.06243134] +[118.73737335 115.77215576] +[120.40499115 100.86514282] +[126.48009491 87.15043640] +[136.39979553 75.89878845] +[149.24496460 68.15272522] +[163.82543945 64.62996674] +[178.79025269 65.65692139] +[192.75280762 71.13842010] +[204.41941833 80.56658936] +[212.70909119 93.06784058] +[216.85374451 107.48386383] +[216.46936035 122.47894287] +[211.59153748 136.66368103] +[202.67224121 148.72378540] +[190.53790283 157.54182434] +[176.31283569 162.30076599] +[161.31506348 162.55963135] +[146.93423462 158.29446411] +[134.50280762 149.90045166] +[125.17218018 138.15458679] +[125.17218018 153.15458679] +[125.17218018 168.15458679] +[136.06672668 179.28770447] +[135.85304260 194.49984741] +[125.17218018 204.81752014] +[125.17218018 219.81752014] +[125.17218018 234.81752014] +[125.17218018 249.81752014] +[139.10159302 255.97311401] +[149.31823730 267.26647949] +[154.05200195 281.74096680] +[152.48275757 296.88882446] +[144.88235474 310.08557129] +[132.56762695 319.04476929] +] def +/pairs [ +[7 94] +[8 93] +[9 92] +[10 91] +[13 88] +[14 87] +[15 86] +[16 67] +[17 66] +[18 64] +[19 63] +[20 62] +[21 60] +[22 59] +[23 58] +[25 56] +[26 55] +[27 54] +[28 53] +[29 52] +[30 51] +[31 50] +[32 49] +[38 46] +[39 45] +] def + +init + +% Start Annotations +7 94 0.0 0.6 colorpair +8 93 0.0 1 colorpair +9 92 0.0 1 colorpair +10 91 0.0 1 colorpair +13 88 0.0 1 colorpair +14 87 0.0 1 colorpair +15 86 0.0 1 colorpair +16 67 0.0 1 colorpair +17 66 0.16 1 colorpair +18 64 0.0 1 colorpair +19 63 0.0 1 colorpair +20 62 0.0 1 colorpair +21 60 0.0 1 colorpair +22 59 0.0 1 colorpair +23 58 0.16 1 colorpair +25 56 0.0 1 colorpair +26 55 0.0 1 colorpair +27 54 0.0 1 colorpair +28 53 0.0 1 colorpair +29 52 0.0 1 colorpair +30 51 0.0 1 colorpair +31 50 0.0 1 colorpair +32 49 0.16 1 colorpair +38 46 0.0 1 colorpair +39 45 0.32 1 colorpair + +% End Annotations +% switch off outline pairs or bases by removing these lines +drawoutline +drawpairs +drawbases +% Start Annotations +7 94 1 gmark +66 cmark +23 cmark +32 cmark +39 cmark +45 cmark + +% End Annotations +% show it +showpage +end +%%EOF
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/2.cluster.top5.aln.ps Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,354 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 0 0 510 164 +%%EndComments +% draws Vienna RNA like colored boxes +/box { % x1 y1 x2 y2 hue saturation + gsave + dup 0.3 mul 1 exch sub sethsbcolor + exch 3 index sub exch 2 index sub rectfill + grestore +} def +% draws a box in current color +/box2 { % x1 y1 x2 y2 + exch 3 index sub exch 2 index sub rectfill +} def +/string { % (Text) x y + 6 add + moveto + show +} def +0 164 translate +1 -1 scale +/Courier findfont +[10 0 0 -10 0 0] makefont setfont +138.0 11.5 144.0 20.0 0.0 0.6 box +138.0 20.0 144.0 28.5 0.0 0.6 box +138.0 28.5 144.0 37.0 0.0 0.6 box +300.0 92.5 306.0 101.0 0.0 0.6 box +300.0 101.0 306.0 109.5 0.0 0.6 box +300.0 109.5 306.0 118.0 0.0 0.6 box +144.0 11.5 150.0 20.0 0.0 1 box +144.0 20.0 150.0 28.5 0.0 1 box +144.0 28.5 150.0 37.0 0.0 1 box +144.0 37.0 150.0 45.5 0.0 1 box +294.0 92.5 300.0 101.0 0.0 1 box +294.0 101.0 300.0 109.5 0.0 1 box +294.0 109.5 300.0 118.0 0.0 1 box +294.0 118.0 300.0 126.5 0.0 1 box +150.0 11.5 156.0 20.0 0.0 1 box +150.0 20.0 156.0 28.5 0.0 1 box +150.0 28.5 156.0 37.0 0.0 1 box +150.0 37.0 156.0 45.5 0.0 1 box +288.0 92.5 294.0 101.0 0.0 1 box +288.0 101.0 294.0 109.5 0.0 1 box +288.0 109.5 294.0 118.0 0.0 1 box +288.0 118.0 294.0 126.5 0.0 1 box +156.0 11.5 162.0 20.0 0.0 1 box +156.0 20.0 162.0 28.5 0.0 1 box +156.0 28.5 162.0 37.0 0.0 1 box +156.0 37.0 162.0 45.5 0.0 1 box +282.0 92.5 288.0 101.0 0.0 1 box +282.0 101.0 288.0 109.5 0.0 1 box +282.0 109.5 288.0 118.0 0.0 1 box +282.0 118.0 288.0 126.5 0.0 1 box +174.0 11.5 180.0 20.0 0.0 1 box +174.0 20.0 180.0 28.5 0.0 1 box +174.0 28.5 180.0 37.0 0.0 1 box +174.0 37.0 180.0 45.5 0.0 1 box +264.0 92.5 270.0 101.0 0.0 1 box +264.0 101.0 270.0 109.5 0.0 1 box +264.0 109.5 270.0 118.0 0.0 1 box +264.0 118.0 270.0 126.5 0.0 1 box +180.0 11.5 186.0 20.0 0.0 1 box +180.0 20.0 186.0 28.5 0.0 1 box +180.0 28.5 186.0 37.0 0.0 1 box +180.0 37.0 186.0 45.5 0.0 1 box +258.0 92.5 264.0 101.0 0.0 1 box +258.0 101.0 264.0 109.5 0.0 1 box +258.0 109.5 264.0 118.0 0.0 1 box +258.0 118.0 264.0 126.5 0.0 1 box +186.0 11.5 192.0 20.0 0.0 1 box +186.0 20.0 192.0 28.5 0.0 1 box +186.0 28.5 192.0 37.0 0.0 1 box +186.0 37.0 192.0 45.5 0.0 1 box +252.0 92.5 258.0 101.0 0.0 1 box +252.0 101.0 258.0 109.5 0.0 1 box +252.0 109.5 258.0 118.0 0.0 1 box +252.0 118.0 258.0 126.5 0.0 1 box +192.0 11.5 198.0 20.0 0.0 1 box +192.0 20.0 198.0 28.5 0.0 1 box +192.0 28.5 198.0 37.0 0.0 1 box +192.0 37.0 198.0 45.5 0.0 1 box +138.0 92.5 144.0 101.0 0.0 1 box +138.0 101.0 144.0 109.5 0.0 1 box +138.0 109.5 144.0 118.0 0.0 1 box +138.0 118.0 144.0 126.5 0.0 1 box +198.0 11.5 204.0 20.0 0.16 1 box +198.0 20.0 204.0 28.5 0.16 1 box +198.0 28.5 204.0 37.0 0.16 1 box +198.0 37.0 204.0 45.5 0.16 1 box +132.0 92.5 138.0 101.0 0.16 1 box +132.0 101.0 138.0 109.5 0.16 1 box +132.0 109.5 138.0 118.0 0.16 1 box +132.0 118.0 138.0 126.5 0.16 1 box +204.0 11.5 210.0 20.0 0.0 1 box +204.0 20.0 210.0 28.5 0.0 1 box +204.0 28.5 210.0 37.0 0.0 1 box +204.0 37.0 210.0 45.5 0.0 1 box +120.0 92.5 126.0 101.0 0.0 1 box +120.0 101.0 126.0 109.5 0.0 1 box +120.0 109.5 126.0 118.0 0.0 1 box +120.0 118.0 126.0 126.5 0.0 1 box +210.0 11.5 216.0 20.0 0.0 1 box +210.0 20.0 216.0 28.5 0.0 1 box +210.0 28.5 216.0 37.0 0.0 1 box +210.0 37.0 216.0 45.5 0.0 1 box +114.0 92.5 120.0 101.0 0.0 1 box +114.0 101.0 120.0 109.5 0.0 1 box +114.0 109.5 120.0 118.0 0.0 1 box +114.0 118.0 120.0 126.5 0.0 1 box +216.0 11.5 222.0 20.0 0.0 1 box +216.0 20.0 222.0 28.5 0.0 1 box +216.0 28.5 222.0 37.0 0.0 1 box +216.0 37.0 222.0 45.5 0.0 1 box +108.0 92.5 114.0 101.0 0.0 1 box +108.0 101.0 114.0 109.5 0.0 1 box +108.0 109.5 114.0 118.0 0.0 1 box +108.0 118.0 114.0 126.5 0.0 1 box +222.0 11.5 228.0 20.0 0.0 1 box +222.0 20.0 228.0 28.5 0.0 1 box +222.0 28.5 228.0 37.0 0.0 1 box +222.0 37.0 228.0 45.5 0.0 1 box +456.0 11.5 462.0 20.0 0.0 1 box +456.0 20.0 462.0 28.5 0.0 1 box +456.0 28.5 462.0 37.0 0.0 1 box +456.0 37.0 462.0 45.5 0.0 1 box +228.0 11.5 234.0 20.0 0.0 1 box +228.0 20.0 234.0 28.5 0.0 1 box +228.0 28.5 234.0 37.0 0.0 1 box +228.0 37.0 234.0 45.5 0.0 1 box +450.0 11.5 456.0 20.0 0.0 1 box +450.0 20.0 456.0 28.5 0.0 1 box +450.0 28.5 456.0 37.0 0.0 1 box +450.0 37.0 456.0 45.5 0.0 1 box +234.0 11.5 240.0 20.0 0.16 1 box +234.0 20.0 240.0 28.5 0.16 1 box +234.0 28.5 240.0 37.0 0.16 1 box +234.0 37.0 240.0 45.5 0.16 1 box +444.0 11.5 450.0 20.0 0.16 1 box +444.0 20.0 450.0 28.5 0.16 1 box +444.0 28.5 450.0 37.0 0.16 1 box +444.0 37.0 450.0 45.5 0.16 1 box +246.0 11.5 252.0 20.0 0.0 1 box +246.0 20.0 252.0 28.5 0.0 1 box +246.0 28.5 252.0 37.0 0.0 1 box +246.0 37.0 252.0 45.5 0.0 1 box +432.0 11.5 438.0 20.0 0.0 1 box +432.0 20.0 438.0 28.5 0.0 1 box +432.0 28.5 438.0 37.0 0.0 1 box +432.0 37.0 438.0 45.5 0.0 1 box +252.0 11.5 258.0 20.0 0.0 1 box +252.0 20.0 258.0 28.5 0.0 1 box +252.0 28.5 258.0 37.0 0.0 1 box +252.0 37.0 258.0 45.5 0.0 1 box +426.0 11.5 432.0 20.0 0.0 1 box +426.0 20.0 432.0 28.5 0.0 1 box +426.0 28.5 432.0 37.0 0.0 1 box +426.0 37.0 432.0 45.5 0.0 1 box +258.0 11.5 264.0 20.0 0.0 1 box +258.0 20.0 264.0 28.5 0.0 1 box +258.0 28.5 264.0 37.0 0.0 1 box +258.0 37.0 264.0 45.5 0.0 1 box +420.0 11.5 426.0 20.0 0.0 1 box +420.0 20.0 426.0 28.5 0.0 1 box +420.0 28.5 426.0 37.0 0.0 1 box +420.0 37.0 426.0 45.5 0.0 1 box +264.0 11.5 270.0 20.0 0.0 1 box +264.0 20.0 270.0 28.5 0.0 1 box +264.0 28.5 270.0 37.0 0.0 1 box +264.0 37.0 270.0 45.5 0.0 1 box +414.0 11.5 420.0 20.0 0.0 1 box +414.0 20.0 420.0 28.5 0.0 1 box +414.0 28.5 420.0 37.0 0.0 1 box +414.0 37.0 420.0 45.5 0.0 1 box +270.0 11.5 276.0 20.0 0.0 1 box +270.0 20.0 276.0 28.5 0.0 1 box +270.0 28.5 276.0 37.0 0.0 1 box +270.0 37.0 276.0 45.5 0.0 1 box +408.0 11.5 414.0 20.0 0.0 1 box +408.0 20.0 414.0 28.5 0.0 1 box +408.0 28.5 414.0 37.0 0.0 1 box +408.0 37.0 414.0 45.5 0.0 1 box +276.0 11.5 282.0 20.0 0.0 1 box +276.0 20.0 282.0 28.5 0.0 1 box +276.0 28.5 282.0 37.0 0.0 1 box +276.0 37.0 282.0 45.5 0.0 1 box +402.0 11.5 408.0 20.0 0.0 1 box +402.0 20.0 408.0 28.5 0.0 1 box +402.0 28.5 408.0 37.0 0.0 1 box +402.0 37.0 408.0 45.5 0.0 1 box +282.0 11.5 288.0 20.0 0.0 1 box +282.0 20.0 288.0 28.5 0.0 1 box +282.0 28.5 288.0 37.0 0.0 1 box +282.0 37.0 288.0 45.5 0.0 1 box +396.0 11.5 402.0 20.0 0.0 1 box +396.0 20.0 402.0 28.5 0.0 1 box +396.0 28.5 402.0 37.0 0.0 1 box +396.0 37.0 402.0 45.5 0.0 1 box +288.0 11.5 294.0 20.0 0.16 1 box +288.0 20.0 294.0 28.5 0.16 1 box +288.0 28.5 294.0 37.0 0.16 1 box +288.0 37.0 294.0 45.5 0.16 1 box +390.0 11.5 396.0 20.0 0.16 1 box +390.0 20.0 396.0 28.5 0.16 1 box +390.0 28.5 396.0 37.0 0.16 1 box +390.0 37.0 396.0 45.5 0.16 1 box +324.0 11.5 330.0 20.0 0.0 1 box +324.0 20.0 330.0 28.5 0.0 1 box +324.0 28.5 330.0 37.0 0.0 1 box +324.0 37.0 330.0 45.5 0.0 1 box +372.0 11.5 378.0 20.0 0.0 1 box +372.0 20.0 378.0 28.5 0.0 1 box +372.0 28.5 378.0 37.0 0.0 1 box +372.0 37.0 378.0 45.5 0.0 1 box +330.0 11.5 336.0 20.0 0.32 1 box +330.0 20.0 336.0 28.5 0.32 1 box +330.0 28.5 336.0 37.0 0.32 1 box +330.0 37.0 336.0 45.5 0.32 1 box +366.0 11.5 372.0 20.0 0.32 1 box +366.0 20.0 372.0 28.5 0.32 1 box +366.0 28.5 372.0 37.0 0.32 1 box +366.0 37.0 372.0 45.5 0.32 1 box +0 setgray +(......\(\(\(\(..\(\(\(\(\(\(\(\(\(\(\(.\(\(\(\(\(\(\(\(.....\(\(.....\)\)..\)\)\)\)\)\)\)\).\)\)\)) 102.0 2.0 string +(SEQ72_1_100_+) 6.0 12.5 string +(ACCAUCCUUUUCUUGGGGUUGCACUACUGUCCAAUGGGUACCUAGUGAGGGCAGUACUGC) 102.0 12.5 string +(60) 468.0 12.5 string +(SEQ73_1_100_+) 6.0 21.0 string +(ACCAUCCUUUUCUUGGGGUUGCACUACUGUCCAAAGAGCAUGUAGUGAGGGCAGUACUGC) 102.0 21.0 string +(60) 468.0 21.0 string +(SEQ74_1_100_+) 6.0 29.5 string +(ACCAUCCUUUUCUUGGGGUUGCGCUACUGUCCAAUGAGCGCAUAGUGAGGGCAGUACUGC) 102.0 29.5 string +(60) 468.0 29.5 string +(SEQ75_1_100_+) 6.0 38.0 string +(ACCAUCCUUUUCUUGGGGUUGCACUACUGUCUAAUGAGUGCAUAAUGAGGGCAGUAUUGC) 102.0 38.0 string +(60) 468.0 38.0 string +(.........10........20........30........40........50.........) 102.0 48.5 string +0.6 setgray +102.0 60.2 108.0 76.5 box2 +108.0 60.2 114.0 76.5 box2 +114.0 60.2 120.0 76.5 box2 +120.0 60.2 126.0 76.5 box2 +126.0 60.2 132.0 76.5 box2 +132.0 60.2 138.0 76.5 box2 +138.0 60.2 144.0 76.5 box2 +144.0 60.2 150.0 76.5 box2 +150.0 60.2 156.0 76.5 box2 +156.0 60.2 162.0 76.5 box2 +162.0 60.2 168.0 76.5 box2 +168.0 60.2 174.0 76.5 box2 +174.0 60.2 180.0 76.5 box2 +180.0 60.2 186.0 76.5 box2 +186.0 60.2 192.0 76.5 box2 +192.0 60.2 198.0 76.5 box2 +198.0 60.2 204.0 76.5 box2 +204.0 60.2 210.0 76.5 box2 +210.0 60.2 216.0 76.5 box2 +216.0 60.2 222.0 76.5 box2 +222.0 60.2 228.0 76.5 box2 +228.0 60.2 234.0 76.5 box2 +234.0 65.7 240.0 76.5 box2 +240.0 60.2 246.0 76.5 box2 +246.0 60.2 252.0 76.5 box2 +252.0 60.2 258.0 76.5 box2 +258.0 60.2 264.0 76.5 box2 +264.0 60.2 270.0 76.5 box2 +270.0 60.2 276.0 76.5 box2 +276.0 60.2 282.0 76.5 box2 +282.0 60.2 288.0 76.5 box2 +288.0 65.7 294.0 76.5 box2 +294.0 60.2 300.0 76.5 box2 +300.0 60.2 306.0 76.5 box2 +306.0 65.7 312.0 76.5 box2 +312.0 60.2 318.0 76.5 box2 +318.0 65.7 324.0 76.5 box2 +324.0 60.2 330.0 76.5 box2 +330.0 71.1 336.0 76.5 box2 +336.0 71.1 342.0 76.5 box2 +342.0 65.7 348.0 76.5 box2 +348.0 71.1 354.0 76.5 box2 +354.0 60.2 360.0 76.5 box2 +360.0 60.2 366.0 76.5 box2 +366.0 65.7 372.0 76.5 box2 +372.0 60.2 378.0 76.5 box2 +378.0 60.2 384.0 76.5 box2 +384.0 60.2 390.0 76.5 box2 +390.0 60.2 396.0 76.5 box2 +396.0 60.2 402.0 76.5 box2 +402.0 60.2 408.0 76.5 box2 +408.0 60.2 414.0 76.5 box2 +414.0 60.2 420.0 76.5 box2 +420.0 60.2 426.0 76.5 box2 +426.0 60.2 432.0 76.5 box2 +432.0 60.2 438.0 76.5 box2 +438.0 65.7 444.0 76.5 box2 +444.0 60.2 450.0 76.5 box2 +450.0 60.2 456.0 76.5 box2 +456.0 60.2 462.0 76.5 box2 +0 setgray +(.\)\)\).\)\)..................\)\)\)..\)\)\)\)......) 102.0 83.0 string +(SEQ72_1_100_+) 6.0 93.5 string +(UAACUCCUGCACAACACACCGAAAUCAACUAGAGCUUUGC) 102.0 93.5 string +(100) 348.0 93.5 string +(SEQ73_1_100_+) 6.0 102.0 string +(UAACGUCUACACAACACACCCACCUCAACUAGAGCUUUGC) 102.0 102.0 string +(100) 348.0 102.0 string +(SEQ74_1_100_+) 6.0 110.5 string +(UAACGCCUGAACAACACACCCGCAUCAACUAGAGCUUUUG) 102.0 110.5 string +(100) 348.0 110.5 string +(SEQ75_1_100_+) 6.0 119.0 string +(UAACGCCUAUACAAUGCACCUGCAUCAACUAGAACUUUGC) 102.0 119.0 string +(100) 348.0 119.0 string +(.........70........80........90........1) 102.0 129.5 string +0.6 setgray +102.0 141.2 108.0 157.5 box2 +108.0 141.2 114.0 157.5 box2 +114.0 141.2 120.0 157.5 box2 +120.0 141.2 126.0 157.5 box2 +126.0 146.7 132.0 157.5 box2 +132.0 146.7 138.0 157.5 box2 +138.0 141.2 144.0 157.5 box2 +144.0 141.2 150.0 157.5 box2 +150.0 152.1 156.0 157.5 box2 +156.0 152.1 162.0 157.5 box2 +162.0 141.2 168.0 157.5 box2 +168.0 141.2 174.0 157.5 box2 +174.0 141.2 180.0 157.5 box2 +180.0 141.2 186.0 157.5 box2 +186.0 146.7 192.0 157.5 box2 +192.0 146.7 198.0 157.5 box2 +198.0 141.2 204.0 157.5 box2 +204.0 141.2 210.0 157.5 box2 +210.0 141.2 216.0 157.5 box2 +216.0 141.2 222.0 157.5 box2 +222.0 152.1 228.0 157.5 box2 +228.0 152.1 234.0 157.5 box2 +234.0 146.7 240.0 157.5 box2 +240.0 146.7 246.0 157.5 box2 +246.0 141.2 252.0 157.5 box2 +252.0 141.2 258.0 157.5 box2 +258.0 141.2 264.0 157.5 box2 +264.0 141.2 270.0 157.5 box2 +270.0 141.2 276.0 157.5 box2 +276.0 141.2 282.0 157.5 box2 +282.0 141.2 288.0 157.5 box2 +288.0 141.2 294.0 157.5 box2 +294.0 141.2 300.0 157.5 box2 +300.0 146.7 306.0 157.5 box2 +306.0 141.2 312.0 157.5 box2 +312.0 141.2 318.0 157.5 box2 +318.0 141.2 324.0 157.5 box2 +324.0 141.2 330.0 157.5 box2 +330.0 146.7 336.0 157.5 box2 +336.0 146.7 342.0 157.5 box2 +showpage
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/combined_cm_out Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,53 @@ +##.1.1 +SEQ31 - dataset_60 - cm 1 73 1 73 + no 1 0.56 0.0 88.9 1.2e-150 ! ORIGID RF00005_rep.34_AC008443.10/43006-42934_31 ORIGHEAD RF00005 +SEQ11 - dataset_60 - cm 1 73 1 82 + no 1 0.62 0.0 88.3 8e-150 ! ORIGID RF00005_rep.16_AL133551.13/12355-12436_11 ORIGHEAD RF00005 +SEQ9 - dataset_60 - cm 1 73 1 73 + no 1 0.56 0.0 87.8 4.6e-149 ! ORIGID RF00005_rep.14_AL021808.2/65570-65498_9 ORIGHEAD RF00005 +SEQ32 - dataset_60 - cm 1 73 1 73 + no 1 0.58 0.0 87.3 2.6e-148 ! ORIGID RF00005_rep.35_AC005783.1/27398-27326_32 ORIGHEAD RF00005 +SEQ13 - dataset_60 - cm 1 73 1 82 + no 1 0.56 0.0 86.3 8.9e-147 ! ORIGID RF00005_rep.18_AL021918.1/81116-81197_13 ORIGHEAD RF00005 +SEQ36 - dataset_60 - cm 1 73 1 73 + no 1 0.51 0.0 83.0 1.1e-141 ! ORIGID RF00005_rep.39_AL031229.2/40502-40430_36 ORIGHEAD RF00005 +SEQ12 - dataset_60 - cm 1 73 1 82 + no 1 0.57 0.0 82.7 3.1e-141 ! ORIGID RF00005_rep.17_AL021918.1/54817-54736_12 ORIGHEAD RF00005 +SEQ26 - dataset_60 - cm 1 73 1 72 + no 1 0.50 0.0 82.0 4.9e-140 ! ORIGID RF00005_rep.2_AL662865.4/12206-12135_26 ORIGHEAD RF00005 +SEQ5 - dataset_60 - cm 1 73 1 72 + no 1 0.51 0.0 81.7 1.3e-139 ! ORIGID RF00005_rep.10_X58792.1/174-245_5 ORIGHEAD RF00005 +SEQ50 - dataset_60 - cm 1 73 1 73 + no 1 0.56 0.0 80.8 3.1e-138 ! ORIGID RF00005_rep.9_AP000442.6/2022-1950_50 ORIGHEAD RF00005 +SEQ28 - dataset_60 - cm 1 73 1 71 + no 1 0.62 0.0 80.7 4.6e-138 ! ORIGID RF00005_rep.31_AC092686.3/29631-29561_28 ORIGHEAD RF00005 +SEQ15 - dataset_60 - cm 1 73 1 73 + no 1 0.53 0.0 80.6 5.9e-138 ! ORIGID RF00005_rep.1_AC005329.1/7043-6971_15 ORIGHEAD RF00005 +SEQ24 - dataset_60 - cm 1 73 1 73 + no 1 0.56 0.0 80.3 1.5e-137 ! ORIGID RF00005_rep.28_X04779.1/1-73_24 ORIGHEAD RF00005 +SEQ4 - dataset_60 - cm 1 73 1 73 + no 1 0.56 0.0 79.2 7.3e-136 ! ORIGID RF00005_rep.0_M15347.1/1040-968_4 ORIGHEAD RF00005 +SEQ46 - dataset_60 - cm 1 73 1 72 + no 1 0.65 0.0 78.4 1.3e-134 ! ORIGID RF00005_rep.5_AL590385.23/26129-26058_46 ORIGHEAD RF00005 +SEQ17 - dataset_60 - cm 1 73 1 71 + no 1 0.59 0.0 77.7 1.6e-133 ! ORIGID RF00005_rep.21_AL355149.13/15278-15208_17 ORIGHEAD RF00005 +SEQ37 - dataset_60 - cm 1 73 1 82 + no 1 0.63 0.0 76.3 2.5e-131 ! ORIGID RF00005_rep.3_Z54587.1/126-45_37 ORIGHEAD RF00005 +SEQ10 - dataset_60 - cm 1 73 1 73 + no 1 0.62 0.0 76.3 2.8e-131 ! ORIGID RF00005_rep.15_AC008443.10/42590-42518_10 ORIGHEAD RF00005 +SEQ23 - dataset_60 - cm 1 73 1 74 + no 1 0.61 0.0 75.9 1.2e-130 ! ORIGID RF00005_rep.27_AL352978.6/119697-119770_23 ORIGHEAD RF00005 +SEQ20 - dataset_60 - cm 1 73 1 72 + no 1 0.56 0.0 75.8 1.7e-130 ! ORIGID RF00005_rep.24_AC004941.2/32735-32806_20 ORIGHEAD RF00005 +SEQ30 - dataset_60 - cm 1 73 1 72 + no 1 0.61 0.0 74.9 4e-129 ! ORIGID RF00005_rep.33_AC018638.5/4694-4623_30 ORIGHEAD RF00005 +SEQ16 - dataset_60 - cm 1 73 1 72 + no 1 0.61 0.0 74.9 4e-129 ! ORIGID RF00005_rep.20_AL671879.2/100356-100285_16 ORIGHEAD RF00005 +SEQ21 - dataset_60 - cm 1 73 1 74 + no 1 0.61 0.0 74.8 4.8e-129 ! ORIGID RF00005_rep.25_AC006449.19/196857-196784_21 ORIGHEAD RF00005 +SEQ18 - dataset_60 - cm 1 73 1 72 + no 1 0.58 0.0 72.9 4.3e-126 ! ORIGID RF00005_rep.22_AL590385.23/26487-26416_18 ORIGHEAD RF00005 +SEQ35 - dataset_60 - cm 1 73 1 72 + no 1 0.65 0.0 71.9 1.2e-124 ! ORIGID RF00005_rep.38_J00309.1/356-427_35 ORIGHEAD RF00005 +SEQ45 - dataset_60 - cm 1 73 1 72 + no 1 0.60 0.0 71.6 4.5e-124 ! ORIGID RF00005_rep.4_Z98744.2/66305-66234_45 ORIGHEAD RF00005 +SEQ7 - dataset_60 - cm 1 73 1 83 + no 1 0.63 0.0 71.2 2e-123 ! ORIGID RF00005_rep.12_AC108081.2/59868-59786_7 ORIGHEAD RF00005 +SEQ33 - dataset_60 - cm 1 73 1 72 + no 1 0.62 0.0 69.2 2e-120 ! ORIGID RF00005_rep.36_AC007298.17/145366-145295_33 ORIGHEAD RF00005 +SEQ19 - dataset_60 - cm 1 73 1 82 + no 1 0.59 0.0 69.0 4e-120 ! ORIGID RF00005_rep.23_M16479.1/42-123_19 ORIGHEAD RF00005 +SEQ22 - dataset_60 - cm 1 73 1 72 + no 1 0.49 0.0 48.1 5.1e-88 ! ORIGID RF00005_rep.26_AF346999.1/4402-4331_22 ORIGHEAD RF00005 +SEQ40 - dataset_60 - cm 1 73 1 66 + no 1 0.45 0.0 44.2 4.7e-82 ! ORIGID RF00005_rep.42_AF347015.1/5827-5762_40 ORIGHEAD RF00005 +SEQ29 - dataset_60 - cm 1 73 1 66 + no 1 0.42 0.0 31.0 8.7e-62 ! ORIGID RF00005_rep.32_AF347015.1/5892-5827_29 ORIGHEAD RF00005 +SEQ14 - dataset_60 - cm 1 73 1 73 + no 1 0.41 0.0 29.5 2.2e-59 ! ORIGID RF00005_rep.19_AF134583.1/1816-1744_14 ORIGHEAD RF00005 +SEQ39 - dataset_60 - cm 1 73 1 69 + no 1 0.39 0.0 21.6 2.5e-47 ! ORIGID RF00005_rep.41_AC093311.2/140036-139968_39 ORIGHEAD RF00005 +SEQ48 - dataset_60 - cm 1 73 1 71 + no 1 0.35 0.0 12.9 5.7e-34 ! ORIGID RF00005_rep.7_AF347005.1/12268-12338_48 ORIGHEAD RF00005 +SEQ34 - dataset_60 - cm 1 73 1 68 + no 1 0.34 0.0 12.8 9.6e-34 ! ORIGID RF00005_rep.37_AF347001.1/16015-15948_34 ORIGHEAD RF00005 +SEQ6 - dataset_60 - cm 1 73 1 66 + no 1 0.38 0.0 12.1 1.1e-32 ! ORIGID RF00005_rep.11_AF346992.1/15890-15955_6 ORIGHEAD RF00005 +SEQ42 - dataset_60 - cm 1 73 1 69 + no 1 0.38 0.0 9.4 1.4e-28 ! ORIGID RF00005_rep.44_AC008670.6/83597-83665_42 ORIGHEAD RF00005 +SEQ8 - dataset_60 - cm 1 73 1 70 + no 1 0.33 0.0 9.0 6.2e-28 ! ORIGID RF00005_rep.13_AC067849.6/4771-4840_8 ORIGHEAD RF00005 +SEQ27 - dataset_60 - cm 1 73 1 69 + no 1 0.43 0.0 8.6 3.1e-27 ! ORIGID RF00005_rep.30_AL132988.4/95773-95841_27 ORIGHEAD RF00005 +SEQ41 - dataset_60 - cm 1 73 1 68 + no 1 0.26 0.1 7.7 6e-26 ! ORIGID RF00005_rep.43_L23320.1/77-10_41 ORIGHEAD RF00005 +SEQ43 - dataset_60 - cm 1 73 1 71 + no 1 0.41 0.0 4.3 1.1e-20 ! ORIGID RF00005_rep.45_AF382005.1/581-651_43 ORIGHEAD RF00005 +SEQ25 - dataset_60 - cm 1 73 1 69 + no 1 0.29 0.0 4.2 1.8e-20 ! ORIGID RF00005_rep.29_AF381996.2/4265-4333_25 ORIGHEAD RF00005 +SEQ44 - dataset_60 - cm 1 73 1 69 + no 1 0.42 0.0 1.2 6.2e-16 ! ORIGID RF00005_rep.46_AF347015.1/1604-1672_44 ORIGHEAD RF00005 +SEQ38 - dataset_60 - cm 1 73 1 65 + no 1 0.23 0.5 -0.9 1.1e-12 ! ORIGID RF00005_rep.40_AF382013.1/10403-10467_38 ORIGHEAD RF00005 +SEQ47 - dataset_60 - cm 1 73 1 68 + no 1 0.24 0.5 -1.5 9.1e-12 ! ORIGID RF00005_rep.6_X93334.1/6942-7009_47 ORIGHEAD RF00005 +SEQ49 - dataset_60 - cm 1 73 1 68 + no 1 0.35 0.0 -4.4 2.9e-07 ! ORIGID RF00005_rep.8_AF134583.1/1599-1666_49 ORIGHEAD RF00005 +##.1.2 +SEQ74 - dataset_61 - cm 1 100 1 100 + no 1 0.51 0.0 163.2 7.9e-68 ! ORIGID RF00618_rep.2_U62822.1/2-128_74 ORIGHEAD RF00618 +SEQ72 - dataset_61 - cm 1 100 1 100 + no 1 0.49 0.0 163.1 8.9e-68 ! ORIGID RF00618_rep.0_AL135914.25/92223-92098_72 ORIGHEAD RF00618 +SEQ73 - dataset_61 - cm 1 100 1 100 + no 1 0.49 0.0 161.5 3.4e-67 ! ORIGID RF00618_rep.1_AL161445.10/77816-77941_73 ORIGHEAD RF00618 +SEQ75 - dataset_61 - cm 1 100 1 100 + no 1 0.44 0.0 160.5 8.2e-67 ! ORIGID RF00618_rep.3_AL389925.10/20736-20611_75 ORIGHEAD RF00618
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/evaluation1.txt Sat Oct 27 13:23:06 2018 -0400 @@ -0,0 +1,5 @@ +completeness_score : 0.533962565156 +homogeneity_score : 1.0 +adjusted_rand_score : 0.551625093777 +adjusted_mutual_info_score : 0.291033044987 +v_measure_score : 0.696187217713