Minecraft Wiki
Register
Advertisement
This is the documentation page, it should be transcluded into the main template page. See Template:Documentation for more information

This template is used for illustrating branching trees with the nodes and base labels being clickable links. They are especially suited to represent evolutionary trees.

Usage[]


{{clade
|label1=Base
|1=Node
}}

produces

Base

Node



{{clade
|1={{clade
   |label1=[[Subtree1]]
   |1=Leaf1
   |label2=Subtree2
   |2=[[Leaf2]]
   }}
}}

produces


Subtree1 

Leaf1


Subtree2 

Leaf2




{{clade| style=font-size:75%;line-height:75%
|1={{clade
   |label1=Subtree1
   |1=Leaf1
   |label2=Subtree2
   |2=Leaf2
   }}
}}

produces


Subtree1

Leaf1


Subtree2

Leaf2




{{clade
|1={{clade
   |1={{clade | thickness=3
      |1=Leaf1
      |2=Leaf2
      }}
   |2=Leaf3
   }}
}}

produces




Leaf1



Leaf2




Leaf3



To replace the solid line with a dashed line, use |stateN=dashed:


{{clade
|1={{clade
   |1={{clade
      |1=Leaf1|state1=dashed
      |2=Leaf2
      }}
   |2=Leaf3
   }}
}}

produces




Leaf1



Leaf2




Leaf3



Tips[]

An easy way of creating larger cladograms is to use the Newick format and proceed to edit it using a suitable text editor to produce the markup.

  1. Start with Newick format ((a,b),(c,d))
  2. Replace "(" with "{{clade|"
  3. Replace ")" with "}}"
  4. Edit to replace commas with pipes and numbers
  5. Edit clade labels if needed

{{clade
 |1={{clade
    |1=a
    |2=b
    }}
 |2={{clade
    |1=c
    |2=d
    }}
}}

Example Perl script to automate the conversion:

use constant N=>"\n";
use constant T=>"\t";

my $tree='((a,b),(c,d));'; # get sequence
$tree=~s/[\n\r]//g; # loose those spaces
$tree=~ s/\:[\.\d]+//g; # loose those lengths
while ($tree=~ m/\(/) {
foreach my $clade ($tree=~ m/\(([^\(\)]+)\)/g) {
my @branches=split /\,/,$clade;
s/(\t+)/$1\t/g for @branches;
die 'ERROR: degenerate/empty node!'.N if $#branches<1;
$tree=~ s/\(\Q$clade\E\)/${\join('','')}/; # substitute
}
pos($tree)=0;
}
$tree=~s/(\t*)\t\}\}/$1\}\}/g; # lazy fix

print $tree;

Using a box[]

You can nest the templates and use links around the text. You may use non-breaking spaces (&nbsp;) to obtain spaces or to have labels that have spaces.

The entire cladogram can be placed in a box so that text flows nicely around it.



Advertisement