Jump to content

Àdàkọ:Clade/doc

Lát'ọwọ́ Wikipedia, ìwé ìmọ̀ ọ̀fẹ́

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.


{{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



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('','{{clade',N,map(T.'|'.($_+1).'='.$branches[$_].N,0..$#branches),T.'}}')}/; # substitute
	}
	pos($tree)=0;
}
$tree=~s/(\t*)\t\}\}/$1\}\}/g; # lazy fix

print $tree;

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. Use within Template:Cladogram.

Àdàkọ:Cladogram

{{cladogram|title=Example
|caption=Sample of Template:Cladogram
|clades={{clade| style=font-size:75%;line-height:75%
|label1=[[Neornithes]]  
|1={{clade
	|label1=[[Paleognathae]]
	|1= 
	|label2= [[Neognathae]] 
	|2={{clade
	   |1=Other birds
	   |label1= 
	   |label2=[[Galloanserae]] 
	   |2={{clade
	       |1=[[Anseriformes]]
		   |label2=    
		   |2={{clade
		      |1=[[Galliformes]]
		      |2=[[Craciformes]]
		      }}
	      }}
	   }}
       }}
  }}
}}