a phylogenetic tree with OTU tip labels

Hello, I have some questions regarding the construction of a tree. I have done my analysis using the OTU based approach and most my files were column formatted as in the 454 SOP. I don’t believe that a tree would add anything to my findings but a tree would provide some nice visuals (everybody loves decorated trees, don’t they?).
I started with
dist.seqs(fasta=final.pick.fasta, output=phylip, processors=16)
#Output File Names:
#It took 911 to calculate the distances for 47601 sequences.
#Output File Names:


however, when visualize the tree, the tips are labelled with the names of the 47,601 unique sequence which is too much (and not OTU). Also, i attempted to colour the tree using the sequence abundance but with no luck since there is no such a file that contain unique sequence abundance by group (i.e. similar to the shared file for OTUs).
what i need help with is (if it makes sense) to

  1. Truncate my “final.pick.fasta” to include only the ones that corresponds to my OTUs
    ( this is how i got my OTUs
    dist.seqs(fasta=final.fasta, cutoff=0.15, processors=16)
    #Output File Names:
    cluster(column=final.dist, name=final.names)
    #changed cutoff to 0.0543412
    #Output File Names:

  2. run again the dis.seqs and clearcut using the shortened fasta to generate a tree with a number of tips that is equivalent to the number of OTUs.

  3. will this allow me to use my taxonomy file (from classify.otu) to decorate the tree?

  4. will this also allow me to use my shared file decorate the tree i.e. colour different groups, abundance,…

it sound a long way around. But i think it is doable. any help would be great


You could do get.oturep, dist.seqs(output=lt), and clearcut to get what you want. i guarantee you the tree will still be hideous.


great thanks, i somehow , when first looked at the get.oturep did not realize that there was a fasta option and i ended up running the get.oturep and getting a .names file only. (THAT I REALLY DIDN’T KNOW WHAT TO DO WITH)
It runs great now.



I’m running into the same problem. I tried following the advice form this post, but I still am having issues.

mothur > get.oturep(list=final.an.list, fasta=final.fasta, name=final.names, method=abundance)
mothur > dist.seqs(fasta= final.an.0.03.rep.fasta, output=lt, processors=4)
mothur > clearcut(phylip=final.an.0.03.rep.phylip.dist)

After these steps, my tree still had tip nodes matching the sequence IDs, not the OTU IDs. The headers of the output of get.oturep looked like this:

NI.4_2757 Otu00002|59526

and that transferred to the dist.seqs, and the matrix looked like this:

NI.4_2757 0.2752
NI.9_3678 0.3633 0.3673
NI.4_4324 0.3123 0.3165 0.3889
NI.7_4838 0.2318 0.2759 0.3554 0.3288
OR.7_5557 0.2628 0.04861 0.3655 0.3038 0.2734
OR.2_5694 0.3212 0.3322 0.3616 0.3247 0.354 0.3116
OR.4_5413 0.3139 0.3278 0.359 0.3003 0.2759 0.3095 0.3354
OR.4_5828 0.2616 0.2907 0.4315 0.3333 0.2386 0.2822 0.3636 0.3421

So that’s what is on my tree tips.

I played around with sed for awhile and managed to get the headers to just the OTU IDs and that ended up working fine, but based on the previous messages in this post, it seems like this shouldn’t be necessary. Is there something I missed?

Thank you,


Getting the OTU ID at the tips of the tree is not straight forward and it depends on the tree program you are using. It is great it worked of you.