Esta plantilla se utiliza para dibujar árboles ramificados con las etiquetas de nodo y base como enlaces en los que se puede hacer clic. Estos diagramas son especialmente adecuados para representar árboles evolutivos ( cladogramas ).
{{ clado | etiqueta1 = Base | 1 = Nodo }}
produce
{{ clado | 1 = {{ clado | etiqueta1 = [[ Subárbol1 ]] | 1 = Hoja1 | etiqueta2 = Subárbol2 | 2 = [[ Hoja2 ]] }} } }
produce
{{ clado | 1 = {{ clado | etiqueta1 = Subárbol1 | 1 = Hoja1 | etiqueta2 = Subárbol2 | 2 = Hoja2 }} }}
produce
Tenga en cuenta que el orden de los parámetros no importa. Exactamente la misma salida es producida por
{{ clado | 1 = {{ clado | 2 = Hoja2 | 1 = Hoja1 | etiqueta1 = Subárbol1 | etiqueta2 = Subárbol2 }} }}
La plantilla de clado tiene muchas características para personalizar la apariencia. Usarlos de manera óptima requiere cierta comprensión de cómo funciona la plantilla. El cladograma se construye utilizando tablas HTML anidadas y las líneas del cladograma son bordes de las celdas ( <td>
etiquetas). Cada plantilla de clado crea una tabla HTML con los elementos que se muestran a continuación:
La apariencia del cladograma se puede personalizar cambiando los atributos del borde de los elementos de la celda HTML, usando los parámetros y |state=
como se muestra a continuación:|color=
|thickness=
Los cladogramas también se pueden generar de derecha a izquierda usando {{ cladeR }} , como se muestra a continuación.
Si bien esto tiene un valor limitado en la Wikipedia en inglés, puede ser útil para presentar filogenias alternativas, por ejemplo, como en el siguiente ejemplo:
Un método común para presentar datos filogenéticos es utilizar el formato Newick . Muchos artículos publicados proporcionan datos en formato Newick en sus materiales complementarios y varios sitios web taxonómicos y fiogenéticos ofrecen descargas (por ejemplo, Open Tree of Life ). Estas cadenas de Newick se pueden utilizar para generar cladogramas de varias formas.
En primer lugar, los datos en formato Newick se pueden utilizar para generar el marcado de la estructura del clado utilizando un editor de texto o una de varias herramientas.
El árbol filogenético que se muestra a la derecha está representado por el siguiente código de Newick y {{ Clade }}
((a,b),(c,d))
{{clade |1={{clade |1=a |2=b}} |2={{clade |1=c |2=d }} }} }}
El procedimiento manual para la conversión en un editor de texto es
Afortunadamente, existen varios métodos para automatizar esta tarea.
utilizar constante N => "\n" ; utilice la constante T => "\t" ; mi $árbol = '((a,b),(c,d));' ; # obtener secuencia $árbol =~ s/[\n\r]//g ; # perder esos espacios $tree =~ s/\:[\.\d]+//g ; # suelta esas longitudes mientras ( $tree =~ m/\(/ ) { foreach my $clade ( $tree =~ m/\(([^\(\)]+)\)/g ) { my @branches = dividir /\,/ , $clade ; ( \ t+ ) /$1\t/g para @branches ; die ' ERROR : nodo degenerado/ vacío ! ' \(\Q$clado\E\)/${\join('','{{clado',N,map(T.'|'.($_+1).'='.$ramas[$ _].N,0..$#ramas),T.'}}')}/ ; # sustituto } pos ( $árbol ) = 0 } $árbol = ~ s/(\t*)\t\} \}/$1\}\}/g ; # solución perezosa imprimir $árbol ;
Los datos en formato Newick también se pueden agregar usando |newickN=
, donde N se refiere al nodo secundario (como con otros parámetros).
Por ejemplo, la siguiente cadena de Newick
((león,jaguar,leopardo),((siberiano,bengala)tigre,leopardo de las nieves))panthera
se puede poner en el código de clado como en el siguiente ejemplo:
Los datos en formato Newick proporcionados por Open Tree of Life y otras fuentes generalmente tienen datos de codificación extraños. Esto se puede eliminar usando los parámetros |newickN-pattern=
y |newickN-replace=
que proporcionan un patrón Lua (similar a Regex) y reemplazo. El siguiente código utiliza datos en formato Newick para el género Prionailurus descargados mediante Open Tree of Life (datos fuente):
{{ clado | newick1 = (Prionailurus_planiceps_ott86166,(((Prionailurus_bengalensis_chinensis_ott198595,Prionailurus_bengalensis_euptilurus_ott547362,Prionailurus_bengalensis_bengalensis_ott5557509,Prionailurus_bengalensis_rabori_ott7067613)Prionailurus_ben galensis_ott280108,Prionailurus_iriomotensis_ott418475),Prionailurus_viverrinus_ott862641),Prionailurus_rubiginosus_ott507541)Prionailurus_ott570215 | newick1-pattern1 = ([%a_]*)_?(ott[%d]*) | newick1-replace1 = ''%1'' | newick1-pattern2 = Prionailurus_ | newick1-reemplazar2 = P._ | newick1-pattern3 = bengalensis_ | newick1-reemplazar3 = b._ }}}}
produce
Puede anidar las plantillas y utilizar enlaces alrededor del texto. Puede utilizar espacios que no se separen ( ) para obtener espacios o para tener etiquetas que tengan espacios.
El cladograma completo se puede colocar en un cuadro para que el texto fluya bien a su alrededor. Puedes usar {{ Cladograma }} para producir la caja.
{{ cladograma | título = Ejemplo | caption = Muestra de {{ tl | Cladograma }} | clados = {{ clado | estilo = tamaño de fuente: 75%; altura de línea: 75%; | etiqueta1 = [[ Neornithes ]] | 1 = {{ clado | etiqueta1 = [[ Paleognathae ]] | 1 = | etiqueta2 = [[ Neognathae ]] | 2 = {{ clado | 1 = Otras aves | etiqueta1 = | etiqueta2 = [[ Galloanserae ]] | 2 = {{ clado | 1 = [[ Anseriformes ]] | etiqueta2 = | 2 = {{ clado | 1 = [[ Galliformes ]] | 2 = [[ Craciformes ]] }} }} }} }} } } } }
Cuando una hermana se representa como un nodo hoja y la otra como un subclado etiquetado, no parecen estar al mismo nivel. Considere este cladograma:
Aunque Banksia es subser. Sphaerocarpae y Banksia subser. Las Leptophyllae son hermanas, sus nombres no están alineados en el cladograma. Si esto no se considera deseable, una solución es utilizar una etiqueta en ambos casos, como se muestra a continuación, que ahora muestra a las hermanas al mismo nivel.
Otro "truco" consiste en introducir un clado ficticio. La línea roja en el siguiente ejemplo muestra dónde se ha insertado un clado adicional:
Para lograrlo, en lugar de
{{ clado | 1 = Hermana1 | etiqueta2 = Hermana2 | 2 = {{ clado | 1 = taxón1 | 2 = taxón2 }} }}
que se muestra como:
usar
{{ clado | 1 = Hermana1 | 2 = {{ clado <!--clado ficticio adicional--> | etiqueta1 = Hermana2 | 1 = {{ clado | 1 = taxón1 | 2 = taxón2 }} }} }}
que se muestra como:
Para insertar un 'corchete' de color alrededor de un conjunto de nodos de hojas que se suceden en el cladograma generado:
barbeginN=colour
barN=colour
barendN=colour
Tenga en cuenta el uso del espacio sin separación (
) para mover la barra vertical del texto de la hoja.
Las líneas horizontales se pueden omitir usando todo. Así, lo siguiente produce barras verticales simples:|barN=colour
Puede utilizar cualquiera de las formas en que se pueden especificar colores en HTML ; por ejemplo, los nombres de colores estándar, las notaciones de tres o seis dígitos hexadecimales, como #FC3 o #F3C630, o la rgb()
notación.
Las pautas de accesibilidad requieren que las páginas no dependan únicamente del color, por lo que es particularmente importante agregar etiquetas si tiene más de un corchete/barra y necesita consultarlos por separado. Hay un par de métodos disponibles.
|grouplabelN=
parámetro. Esto agrega una etiqueta a la derecha del corchete o barra derecha, como se muestra en el siguiente ejemplo. La columna de la derecha ilustra cómo |grouplabel=
se agrega una celda HTML a la derecha de la hoja del terminal.En el ejemplo anterior, se utilizó grouplabel para etiquetar una barra que marca todo el clado. Proporcionó una alternativa a la etiquetaA. Sin embargo, si la barra sólo se aplica a algunos terminales, |grouplabelN=
se puede utilizar para marcar grupos parafiléticos. El siguiente ejemplo también demuestra el uso de |grouplabelstyleN=
para aplicar estilo CSS a la etiqueta de grupo, en este caso el color.
El |grouplabel=
parámetro se puede utilizar para agregar varias etiquetas con la ayuda de la plantilla {{ clade label }} . Esta plantilla utiliza posicionamiento CSS absoluto para determinar la ubicación de la etiqueta. Cuando se aplica a un |grouplabel1=
parámetro en el clado externo, se comporta de manera muy similar a {{ barlabel }} . A continuación se muestra un ejemplo sencillo para etiquetar dos grupos:
El |grouplabel=
parámetro puede contener cualquier Wikitexto o contenido HTML permitido y esto ofrece mucha flexibilidad a la hora de personalizar cladogramas. El siguiente ejemplo utiliza |grouplabel=
para agregar una topología alternativa usando {{ cladeR }} :
Si su cladograma no muestra corchetes/barras como esperaba, verifique que:
barN
, etc. La N debe ser la misma que el número del niño dentro de su clado. Por lo tanto, normalmente debería escribir , por ejemplo .|N=label for leaf|barN=colour for bar
|2=[[Passeridae]]|bar2=midnightblue
Las etiquetas producidas por |labelN=
, donde N
es 1, 2, ..., pueden provocar un diseño deficiente del cladograma resultante. (Esto no se aplica al texto de las hojas, es decir, al texto producido por |N=
.) Para evitar problemas:
Los cladogramas se dibujan generando tablas ocultas. Las líneas horizontales y verticales que forman el árbol son en realidad los bordes de las celdas de la tabla. Luego, el navegador o el agente de usuario dibuja las tablas utilizando sus algoritmos internos. Como difieren de un navegador a otro, los árboles producidos no tendrán el mismo aspecto en todos los navegadores.
En particular, a partir de enero de 2017 [actualizar], existen dos algoritmos para diseñar tablas con celdas vacías, utilizados por dos grupos de navegadores. La mayoría de los navegadores utilizan ahora el algoritmo que produce cladogramas como los dos de la izquierda del diagrama. Safari (tanto en MacOS como en iOS) utiliza otro algoritmo, que produce cladogramas como los dos de la derecha del diagrama.
Actualmente no existe ninguna "solución" automática para estas diferencias.
Si se puede elegir el orden de los nodos terminales (hojas) del árbol, los cladogramas se ven mejor en un navegador tipo Safari si hay tanta ramificación como sea posible en la parte inferior del cladograma. Normalmente, esto se produce disponiendo los nodos terminales hacia abajo en la página en orden de divergencia evolutiva. Compare la fila inferior del diagrama con la fila superior.
Hay muchos errores conocidos en la representación de tablas en el software que produce libros de Wikipedia ; consulte la página de comentarios de la herramienta del libro. A partir de julio de 2011, [actualizar]esto da como resultado que las líneas de los cladogramas no se muestren en los libros. (Los cladogramas se implementan como tablas HTML, lo que permite un formato complejo pero difícil de convertir. Para obtener una forma alternativa de incluir cladogramas de libros, pruebe con imágenes).
Existen limitaciones en cuanto al tamaño y la complejidad de los cladogramas que se pueden dibujar:
Debido a que los cladogramas se construyen anidando plantillas {{ clade }} entre sí, los cladogramas más grandes pueden exceder la profundidad de expansión permitida por el software Wikimedia. El cladograma de la derecha falla en la vigésima plantilla de clado anidado.
Hay dos métodos para sortear esta limitación:
Este enfoque utiliza la plantilla {{ clade sequential }} para enumerar taxones en una secuencia taxonómica . En el siguiente ejemplo, se enumeran seis taxones secuencialmente en la plantilla y el cladograma tiene el primero como primera rama, el segundo a continuación y así sucesivamente hasta que los dos últimos sean hermanos. Debido a que todos los taxones se agregan en una llamada de plantilla, esto solo cuenta una vez para el límite de 20. La desventaja es que no es posible formatear cada nivel de forma independiente.
El segundo ejemplo muestra que se puede agregar alguna subestructura a cada nivel con el uso normal de la plantilla {{ clade }} .
Este método utiliza los parámetros |target=
y |subclade=
para "modularizar" el árbol filogenético. Cada subárbol se procesa en paralelo para que no contribuyan a la profundidad de expansión de manera aditiva. El límite se aplica a cada árbol, pero se pueden utilizar muchos subárboles.
La disposición básica se ilustra a continuación. El árbol principal tiene dos subclados, A y B, y el subclado B llama a un tercero.
La codificación se basa en una serie de convenciones.
|subcladeA=
, |subcladeB=
, ... |subcladeZ=
contienen los subárboles en la estructura de clado que serán sustituidos en el árbol principal.|targetA=
, |targetB=
, ... |subcladeZ=
contienen los destinos donde se sustituirán los subárboles. Por ejemplo, |targetA={SUBCLADE_A
} indica que el destino {SUBCLADE_A}
será reemplazado por el contenido de .|subcladeA=content
{SUBCLADE_A}
y {SUBCLADE_B}
para |subcladeA=
y |subcladeB=
, respectivamente.|1=
, |label2=
etc.Se puede encontrar un ejemplo de un árbol filogenético grande dividido en múltiples subárboles en {{ Phylogeny/APG IV }} .
A veces, con árboles filogenéticos grandes, es difícil ver la madera de los árboles. El cladograma puede exceder la altura de la pantalla, lo que dificulta ver la estructura general y los clados pequeños importantes son demasiado difíciles de ver. Una forma de evitar esto es colapsar los grandes clados y expandirlos de forma interactiva.
El siguiente ejemplo muestra un ejemplo simple para ilustrar el principio:
Una nota de precaución. Los elementos plegables de Wikimedia requieren javascript y actualmente están deshabilitados en la vista móvil. En tales casos se mostrará el cladograma completo. Al igual que con cualquier árbol filogenético grande, los editores deben decidir si tener un árbol más pequeño y menos inclusivo aclara el punto.