Las tablas se pueden ordenar mediante JavaScript del lado del cliente agregando class="wikitable sortable"
a su línea superior. Estas tablas deben tener el formato correcto, con la cantidad correcta de celdas. Además, debe asegurarse de que los encabezados de su columna estén indicados correctamente en el wikitexto . Para esto, !
se utiliza el carácter en la sintaxis de la tabla.
Si está utilizando el Editor visual , puede abrir el cuadro de diálogo de propiedades de una tabla y seleccionar la opción ordenable.
Este es el wikitexto de la tabla que se muestra en la primera sección y muestra la forma típica de habilitar la ordenación de la tabla:
{| class = "wikitable sortable" |- ! nombre ! datos ! más datos |- | gatos | 273 | 53 |- | perros | 65 | 8,492 |- | ratones | 1,649 | 548 |}
Las !
celdas que son celdas de encabezado se indican en la tabla. Para que se pueda ordenar una tabla, las primeras filas deben estar compuestas en su totalidad por estas celdas de encabezado. Puede obtener más información sobre la sintaxis básica de las tablas consultando Introducción a las tablas para la edición de fuentes.
Cuando se presenta una tabla a los usuarios por primera vez, las filas siempre aparecen en el mismo orden que en el wikitexto. Si desea que una tabla aparezca ordenada por una columna determinada, debe ordenar el wikitexto en ese orden. Esto se hace normalmente para la primera columna. El Editor visual facilita el movimiento de columnas y filas individuales de la tabla. Para obtener información sobre esto y también sobre cómo poner una tabla en orden alfabético inicial, consulte § Orden alfabético inicial.
Al navegar por Wikipedia, puede encontrar tablas que se han hecho ordenables . Una tabla ordenable es un tipo de tabla que permite a los lectores ordenar sus datos haciendo clic en las celdas de encabezado de las columnas. Se identifica por las flechas en una o más de sus celdas de encabezado. Por lo general, los lectores pueden ordenar los datos en orden ascendente o descendente según los valores de la columna seleccionada. El primer clic en la celda de encabezado ordenará los datos de la columna en orden ascendente, un segundo clic en la misma flecha en orden descendente y un tercer clic restaurará el orden original de toda la tabla. Por ejemplo; un tercer clic hace que la Lista de países por tasa de homicidios intencionales se restablezca a su orden original por subregión.
Las tablas ordenables son particularmente útiles para organizar y navegar por grandes conjuntos de datos. Por ejemplo, puede tener una tabla que muestre nombres, fechas o datos numéricos. Al hacer que la tabla sea ordenable, permite a los lectores hacer clic en el encabezado de la columna para ordenar, por ejemplo, por orden alfabético (A–Z o Z–A) para los nombres, orden cronológico para las fechas u orden numérico para los números (de menor a mayor o de mayor a menor).
El proceso de ordenación real se realizará en el lado del ordenador mediante JavaScript del lado del cliente . Por este motivo, solo es posible utilizar esta función si tiene JavaScript habilitado en su navegador web. El proceso de ordenación también depende de su ordenador y de la cantidad de datos. Ordenar una tabla muy grande en un ordenador de bajo rendimiento puede llevar mucho tiempo.
Este es un ejemplo de una pequeña tabla ordenable:
Resultado renderizado
Fuente wiki
{| class = "wikitable sortable" |- ! nombre ! datos ! más datos |- | gatos | 273 | 53 |- | perros | 65 | 8,492 |- | ratones | 1,649 | 548 |}
Las tablas con encabezados más complejos que antes ahora se ordenan correctamente. Por ejemplo:
Resultado renderizado
Fuente wiki
{| class = "wikitable sortable" |- ! rowspan = 2 | name ! colspan = 2 | data columnas |- ! data ! more data |- | gatos | 273 | 53 |- | perros | 65 | 8,492 |- | ratones | 1,649 | 548 |}
Si se utilizan dos o más filas de encabezado, las flechas de ordenación se colocan en la fila de encabezado inferior o más baja de forma predeterminada. Se pueden colocar como máximo una fila más arriba que la fila de encabezado más baja si se configuran class="sorttop"
en la parte superior de la fila de encabezado inferior. Por ejemplo:
Es posible crear tablas con celdas que se extiendan sobre dos o más columnas o filas (también conocidas como celdas fusionadas). Para las columnas, se utiliza , mientras que para las filas, se utiliza . En el código de la tabla, se deben omitir las celdas que están cubiertas por dicho intervalo . El recuento de columnas y filas resultante debe ajustarse. Las tablas pueden tener celdas que abarquen varias filas, utilizando .|colspan=n | content
|rowspan=m | content
|rowspan=n
El número de filas debe indicarse con cada uso de rowspan. Antes de que se pueda realizar cualquier ordenación, la configuración de rowspan debe ser correcta. El wikitexto debe ser correcto. Una organización incorrecta de rowspan puede interrumpir la ordenación, provocar un formato extraño en la tabla, mover los datos a la columna incorrecta, etc.
Vea los ejemplos a continuación.
Cuando se ordenan, se rellenan todas las filas. Las tablas sin rowspan son mucho más fáciles de mantener para editores con menos experiencia y para editores que visitan la tabla solo una vez para editarla.
Números de filas y wikitexto correctos, con ordenación en funcionamiento:
Resultado renderizado
Fuente wiki
{| clase = "wikitable ordenable" |-! nombre! datos! año|-| gatos| 273| 2013|-| perros| 65| fila = 2 | 2014 |-| ratones| 1.649<!--columna 3 abarcada por la celda "2014"-->|}
Tenga en cuenta que, después de ordenar, las celdas que abarcan filas se dividen en filas y su contenido se repite (el año "2014" en el ejemplo). Si se restaura el orden original de una tabla haciendo clic una tercera vez en la misma flecha, las celdas permanecerán repetidas y no volverán al orden original de las filas.
Vea el ejemplo a continuación. El wikitexto es incorrecto. La línea 17 no debería existir. Compárese con la tabla correcta anterior. El resultado en este caso es una columna vacía agregada.
Resultado renderizado
Fuente wiki
{| clase = "wikitable ordenable" |-! nombre! datos! año|-| gatos| 273| 2013|-| perros| 65| fila = 2 | 2014 |-| ratones| 1.649||}
Aquí hay un editor de tablas wiki en línea fácil de usar:
Facilita la edición del texto y los enlaces en celdas individuales de una tabla. Es especialmente fácil cuando no hay filas en el cuerpo de una tabla. Consulte la sección anterior. Sin filas es más fácil cambiar la estructura subyacente de una tabla y mover elementos de lugar. Una vez que la estructura del wikitexto es más simple, el editor de tablas en línea también lo es, porque no es necesario editar tanto el wikitexto para editar la tabla.
Cuando una columna contiene valores repetidos, la ordenación de la columna debe mantener el orden original de las filas dentro de cada subconjunto que comparte el mismo valor. Esto se conoce como ordenación estable . Como resultado, la ordenación de múltiples claves (ordenación por claves primarias, secundarias, terciarias, etc.) se puede lograr ordenando la clave menos significativa primero y la clave más significativa al final. Por ejemplo, para ordenar la tabla por la columna "Texto" y luego por la columna "Números", primero debe hacer clic en y ordenar por la columna "Números", la clave secundaria , y luego hacer clic en y ordenar por la columna "Texto", la clave primaria .
Otro método para ordenar con varias teclas es mantener presionada la ⇧ Shifttecla mientras se hace clic en los encabezados de las columnas. Por ejemplo, para ordenar por la columna "Texto" seguida de la columna "Números", primero debe hacer clic en el encabezado de la columna "Texto" (tecla principal) y luego mantener presionada la tecla y hacer clic en el encabezado de la columna "Números" (tecla secundaria).⇧ Shift
Puede haber un problema con la clasificación si el gadget de traducción de Google (ver discusión ) está habilitado en Preferencias → Gadgets → GoogleTrans . Puede parecer que la ordenación secundaria con la tecla Mayús y el clic no funciona debido a la demora que genera la ventana emergente de traducción del nombre en el encabezado de la columna. El gadget se puede activar y desactivar rápidamente, una vez habilitado en las preferencias, desde el menú "Herramientas" en la parte superior derecha de cualquier página. Hay muchos complementos de traducción para navegadores (como Simple Translate para Firefox, Chrome y Edge) que funcionan tan bien o mejor que el gadget.
Resultado renderizado
Fuente wiki
{| class = "wikitable sortable" |- ! {{vert header|stp=1|nombre}} ! {{vert header|stp=1|datos}} ! {{vert header|stp=1|más datos}} ! {{vert header|stp=1|otra columna}} |- | gatos | 273 | 53 | 1 |- | perros | 65 | 8,492 | 2 |- | ratones | 1,649 | 548 | 3 |}
{{ vertical header }} también funciona con encabezados que abarcan filas o columnas (usando rowspan
y col span
). Tenga en cuenta que no hay una barra vertical |
entre rowspan=2
y{{vertical header}}
Resultado renderizado
Fuente wiki
{| class = "wikitable sortable" |- ! rowspan=2 {{vert header|stp=1|nombre}} ! colspan=2 {{vert header|columnas de datos}} ! rowspan=2 {{vert header|stp=1|otra columna}} |- ! {{vert header|stp=1|datos}} ! {{vert header|stp=1|más datos}} |- | gatos | 273 | 53 | 1 |- | perros | 65 | 8,492 | 2 |- | ratones | 1,649 | 548 | 3 |}
{{ sort under }} se puede usar para hacer que las flechas de clasificación aparezcan debajo del texto del encabezado, lo que puede ser conveniente para reducir el ancho de una columna.
Las tablas solo se pueden ordenar verticalmente haciendo clic en los encabezados de columna (celdas superiores). Cuando se hace clic en el encabezado de una columna, las filas de la tabla se reordenan de arriba a abajo, según los valores de esa columna. Sin embargo, no existe ninguna función para ordenar columnas horizontalmente haciendo clic en una celda de la fila más a la izquierda. Por lo tanto, las columnas de la tabla no se reorganizarán de izquierda a derecha según sus datos, ya que la ordenación horizontal no es compatible con las implementaciones típicas de tablas ordenables.
Si desea que una columna específica no se pueda ordenar, especifíquelo class=unsortable
en los atributos de su celda de encabezado. Si tiene una fila de ordenación, class=unsortable
debe estar en la celda de encabezado con el ícono de ordenación.
(Al usar {{ vert header }} , deshabilite la ordenación de columnas omitiendo |stp=1
esa plantilla, lo que anula cualquier cosa colocada antes).
Fuente wiki
{| class = "wikitable sortable" ! Números !! class = "unsortable" | No sortable |- | 1 || Esto |- | 2 || Columna |- | 3 || Es |- | 4 || No sortable |- | 5 || ¿Ves? |- ! Total: 15 !! |}
Resultado renderizado
A veces resulta útil excluir la última fila de una tabla del proceso de ordenación. Existen dos métodos para lograrlo.
Desea repetir el encabezado en la parte inferior. Para ello, utilice la !
sintaxis (signo de exclamación) para todas las celdas de la última fila de la tabla. Esto se reconocerá como pie de página y la fila no formará parte de la clasificación. Este pie de página hace que la tabla sea compleja, por lo que los ámbitos facilitan la accesibilidad a través de lectores de pantalla .
Fuente wiki
{| class = "wikitable sortable" |+ Ejemplo de encabezado como pie de página |- ! scope = col | Nombre ! scope = col | Apellido ! scope = col | Altura |- ! scope = fila | John | Smith | 1.85 |- ! scope = fila | Ron | Ray | 1.89 |- ! scope = fila | Mario | Bianchi | 1.72 |- ! scope = col | Nombre ! scope = col | Apellido ! scope = col | Altura |}
Resultado renderizado
Esto se aplica a todas las filas al final de la tabla que sean consecutivas y estén formadas en su totalidad por celdas de encabezado. Esas filas no se ordenarán.
Esto se puede lograr utilizando class=sortbottom
en la fila de la tabla deseada (línea que comienza con |-
).
Fuente wiki
{| class = "wikitable sortable" |+ Ejemplo de pie de página de suma |- ! scope = col | Nombre ! scope = col | Apellido ! scope = col | Altura |- ! scope = row | John | Smith | 1.85 |- ! scope = row | Ron | Ray | 1.89 |- ! scope = row | Mario | Bianchi | 1.72 |- class = sortbottom ! scope = row colspan = 2 | Promedio: || 1.82 |}
Resultado renderizado
Esta es una tabla compleja debido a que la celda "Promedio" abarca 2 columnas. "Promedio" también es el encabezado de la última fila. El uso de la !
sintaxis (signo de exclamación) con scope=row
hace que se genere el HTML de encabezado correcto, lo que facilita la accesibilidad , por ejemplo, para quienes usan lectores de pantalla.
Es posible mantener varias líneas fijas en la parte inferior, siempre que sean consecutivas.
Si las filas "sortbottom" no son consecutivas, entonces cuando se restablezca el orden original de una tabla haciendo clic una tercera vez en la misma flecha, las filas class=sortbottom
permanecerán en la parte inferior incluso si originalmente no estaban en la parte inferior.
Esto funciona de la misma manera que antes para filas simples (sin encabezado) en la parte superior. Esto se puede lograr utilizando class="sorttop"
en la fila de la tabla deseada (línea que comienza con |-
). Es posible mantener varias líneas fijas en la parte superior, siempre que sean consecutivas.
De manera predeterminada, el sistema intenta adivinar el tipo de datos de cada columna. Para ello, observa las primeras cinco filas y evalúa su contenido. Este proceso funciona la mayor parte del tiempo, pero también puede confundirse fácilmente si tiene valores incoherentes o especificadores adicionales que el sistema no conoce. Para evitar esta ambigüedad, puede forzar un tipo de datos en particular o anular el valor de una celda. Para valores numéricos, considere usar la plantilla {{ Val }} ; vea los ejemplos en Template:Val § Sorting .
El data-sort-type="..."
atributo se puede agregar dentro del encabezado de una columna para garantizar que las celdas debajo se traten como un tipo específico de datos. Debe ir en la celda de encabezado con el ícono de ordenación . No funcionará en una celda de encabezado sin un ícono de ordenación. Por ejemplo; cuando hay dos filas de encabezados, la fila inferior siempre tendrá los íconos de ordenación, como se explicó anteriormente.
Los siguientes valores (que no distinguen entre mayúsculas y minúsculas) son válidos para data-sort-type
:
text
number
currency
url
para direcciones de sitios webIPAddress
para direcciones numéricas de protocolo de Internetdate
Para el formato de fecha estándar específico del idiomaisoDate
para fechas en formato ISO 8601 (es decir, AAAA-MM-DD)usLongDate
Para fechas en el formato estadounidense de mes, día y año. Deben estar presentes los tres para que funcione.time
data-sort-type=text
Utiliza el ordenamiento alfabético del texto, pero los números se ordenan numéricamente dentro de ese ordenamiento alfabético. Véase ordenamiento natural .
Por ejemplo:
Sin data-sort-type=text
el encabezado, el clasificador de tablas se confunde con los títulos numéricos de las primeras filas y trata toda la columna como numérica. Esto hace que clasifique incorrectamente los títulos no numéricos como cero, independientemente del orden alfabético de su texto.
Tenga en cuenta que si una columna sin un tipo de ordenación declarado contiene solo valores numéricos dentro de las primeras cinco celdas superiores, pero con una referencia <ref>...</ref>
inmediatamente después del último dígito de al menos un número en esas primeras cinco celdas, esto puede provocar que la columna se ordene como texto. Esto se puede evitar declarando un tipo de ordenación diferente, como:data-sort-type=number
Si no especifica a data-sort-type
, los modos de ordenación (los tipos de datos que, además de la opción "ascendente" o "descendente", determinan el orden de clasificación) son los siguientes:
cuenta como un espacio; dos espacios en blanco ordinarios adyacentes cuentan como uno; para múltiples espacios en blanco, se pueden usar
o alternar
espacios en blanco ordinarios)Si hay más de un tipo posible que coincida, se elige el primer tipo en el orden anterior. Por ejemplo, "24-12-2007" coincide como fecha, por lo que no se trata como un número. Las etiquetas de formato y marcado se ignoran al determinar el tipo coincidente.
El modo de ordenación se determina por las primeras 5 filas que no están en blanco debajo del encabezado después de cargar la página. Esto también puede cambiar después de eliminar una fila o agregar una columna. Por lo tanto, es conveniente asegurarse de que cada elemento coincida con el criterio para el tipo de datos requerido. Con una plantilla de filas, esto se puede hacer de manera muy conveniente.
El método para asegurarse de que el modo de clasificación de cada columna sea el deseado es especificar un data-sort-type
, consulte más arriba.
A veces, el valor de una celda no se analiza correctamente o se desea ordenar la fila de una manera especial (por ejemplo, una celda que contiene "John Doe" en realidad debería ordenarse como "Doe" y no como "John"). Esto se puede lograr fácilmente usando , de la siguiente manera:{{sortname}}
Fuente wiki
Resultado renderizado
Alternativamente, puede configurar el data-sort-value
atributo:
Fuente wiki
Por ejemplo, esto es útil para ordenar los rangos militares por orden de antigüedad:
Marcado wiki
{|class="wikitable ordenable"!Nombre y apellido!!Rango|-| data-sort-value="Smith, John" |John Smith|| data-sort-value="16" |[[Cabo|Cabo]]|-| data-sort-value="Ray, Ian" |Ian Ray|| data-sort-value="8" |[[Capitán (OF-2)|Capitán]]|-| data-sort-value="Bianchi, Zachary" |Zachary Bianchi|| data-sort-value="10" |[[Segundo teniente|Segundo teniente]]|}
Esto da como resultado:
Consulte también mw:Ayuda:Ordenar#Especificar una clave de ordenación.
Si tiene una lista en la que todas las entradas comienzan con comillas (") y desea establecer una clave de ordenación para una de las entradas, deberá utilizar el nombre HTML o el número de comillas al comienzo de esa clave de ordenación (consulte también Lista de referencias de entidades de caracteres XML y HTML § Referencias de entidades de caracteres en HTML ). Las listas de títulos de canciones, por ejemplo, a veces tienen cada título de canción entre comillas. Por lo tanto, para ordenar por una palabra en particular en el título de una canción, utilice una de estas opciones:
data-sort-value=""WORD"
data-sort-value=""WORD"
data-sort-value
Se puede utilizar para mantener unidas determinadas filas. Se conserva el orden especificado de estas filas. Un ejemplo es mantener "Holanda del Sur" inmediatamente después de "Países Bajos", independientemente del orden de clasificación o la columna:
Resultado renderizado
Fuente wiki
{| class = "wikitable sortable" ! País/provincia !! Capital |- | Francia || París |- | Países Bajos || Ámsterdam |- | data-sort-value = Países Bajos | Holanda Meridional || data-sort-value = Ámsterdam | La Haya |- | Reino Unido || Londres |}
Si tiene filas que contienen columnas, esto puede resultar un poco difícil. También puede utilizar el class="expand-child"
en una fila; entonces, siempre estará debajo de la fila que se encuentra justo encima en la fuente de la tabla, donde sea que se ordene esa fila en la tabla.
Resultado renderizado
Fuente wiki
{| class = "wikitable sortable" ! style = "width:9.3em" | País !! Capital |- | '''Francia''' | París |- class = "expand-child" | colspan = "2" | En París está la Torre Eiffel. |- | '''Reino Unido''' | Londres |- class = "expand-child" | colspan = "2" | En el Reino Unido no se puede pagar con euros, |- class = "expand-child" | colspan = "2" | y se conduce por la izquierda. |- | '''Alemania''' | Berlín |- class = "expand-child" | colspan = "2" | Alemania incluye la antigua RDA. |}
El script ve lo que contienen las primeras 5 celdas de una columna. El modo de ordenación se vuelve numérico si las primeras 5 celdas contienen solo un número (la coma y el punto utilizados en el formato de números se aceptan como números). El orden de ordenación numérico se mantiene incluso cuando se encuentra texto en las celdas que siguen a la quinta celda. 123,564,589.7e12 está en notación científica y se trata como un número. Una celda vacía se trata como algo que no es un número cuando se ordena numéricamente. Hay una celda vacía inicialmente en la parte inferior de cada una de las 2 tablas que se encuentran justo debajo.
La detección automática de tipos de datos es inconsistente. Siempre es mejor agregar un data-sort-type
al encabezado de la columna.
Un solo carácter monetario o un solo carácter alfabético actualmente no cambia lo que el script determina a través de las primeras 5 celdas de una columna: orden numérico.
El signo de porcentaje no cambia de determinación como orden numérico. Las combinaciones de números con signos menos o de división dentro de ellas aún se detectan como números. Sin embargo, su orden numérico está determinado por el número antes del signo menos o de división.
Un signo más en una celda vacía entre las primeras 5 celdas altera el ordenamiento numérico predeterminado. Lo mismo ocurre con un signo más después de un número si este se encuentra en una de las primeras 5 celdas de una columna.
La mayoría de estos problemas se pueden solucionar especificando manualmente el modo de ordenación de una columna, colocándolo data-sort-type=number
en el encabezado de la columna. Vea las tablas de ejemplo anteriores y posteriores. Vea también meta:Help:Sorting#Sort mode y la sección sobre cómo forzar el modo de ordenación de una columna.
Para que funcione, data-sort-type=number
debe estar en la celda del encabezado que contiene el ícono de ordenación. En las tablas con encabezados de varias filas, el ícono de ordenación estará en las celdas del encabezado más bajas.
Las referencias <ref>...</ref>
después de un número en cualquier celda (incluidas las primeras cinco celdas) ya no interrumpen la ordenación numérica.
El texto interrumpe el ordenamiento numérico predeterminado si está antes o después de un número en una de las primeras 5 celdas de una columna.
Un signo de dos puntos por sí solo (para indicar que no hay datos, por ejemplo) en una de las primeras 5 celdas de una columna interrumpe la ordenación numérica.
Incluso cuando se utiliza data-sort-type=number
en el encabezado de columna, el texto que aparece antes de un número en cualquier celda interrumpe el ordenamiento numérico de esa celda. El texto después de un número no es un problema si el orden de clasificación de una columna se especifica mediante data-sort-type=number
.
Los ceros a la izquierda no son necesarios para ordenar numéricamente una columna. Si parece así, significa que la columna se está ordenando alfabéticamente. Busque en las primeras 5 celdas cualquier cosa que no sean números y corrija esas celdas de acuerdo con estas reglas. Mejor aún, agréguelas data-sort-type=number
al encabezado de la columna. La edición posterior por parte de otros editores no alterará la ordenación numérica.
Un guión, de cualquier tipo, en una celda en blanco en una de las primeras 5 celdas de una columna interrumpe la ordenación numérica predeterminada de una columna.
Un guión delante de un número no interrumpe la clasificación numérica.
Se permiten guiones en cualquier lugar de las celdas si data-sort-type=number
se utilizan en el encabezado de la columna.
La plantilla {{ N/A }} en las primeras cinco celdas de una columna tiene un efecto inconsistente en la detección automática de tipos de datos. Siempre es mejor especificar una data-sort-type
en el encabezado de la columna.
" c. " (circa, indica "aproximadamente") se encuentra a menudo en columnas de números y fechas. A menudo interrumpe la clasificación. La adición de data-sort-type="..."
al encabezado de columna no permite colocar c. delante del número.
El uso de la plantilla {{ circa }} corrige la clasificación cuando c. está delante del número, pero solo si el sortable=yes
parámetro se agrega a la plantilla. Consulte: Plantilla:Circa/doc/sortable .
{{circa|NUMBER|sortable=yes}}
Alternativamente, se puede colocar c. después del número o moverlo a una columna diferente.
data-sort-type=number
al encabezado de la columna. También se evitan problemas causados por la edición posterior.Un guion después de un número ya no interrumpe la ordenación numérica predeterminada de una columna. Por lo tanto, ahora funciona un rango (30–40).
Un signo más después de un número interrumpe la ordenación numérica predeterminada si está en una de las primeras 5 celdas de una columna.
Un signo más en una celda que de otro modo estaría vacía interrumpe la ordenación numérica predeterminada de una columna. Esto sucede si la celda es una de las primeras 5 celdas de la columna.
También puede utilizar 2 columnas para un rango si desea ordenar por el rango inferior o superior. Si desea que el rango superior se ordene mejor, todas las celdas deben completarse con números. Por ejemplo, puede utilizar el mismo número tanto en el rango inferior como en el superior. También puede agregar un signo más después del número en el rango superior.
El primer conjunto de tablas que se muestra a continuación no se ordena correctamente, excepto el rango inferior, que no tiene factores de complicación. Tenga en cuenta que "400+" y "400 +" no se ordenan correctamente en sus columnas. Estas tablas no tienen data-sort-type=number
en sus encabezados de columna.
data-sort-type=number
Se ha corregido la clasificación en las tablas siguientes. Observe la clasificación de 400+ y 400 + .
La plantilla {{ Date table sorting }} o {{ dts }} funcionará con cualquier combinación de años, meses y días. Vea un ejemplo aquí . Vea la documentación de la plantilla y la sección más abajo para obtener más información.
Es posible que la ordenación de los nombres de los meses falle para los usuarios registrados que hayan cambiado la configuración de idioma predeterminada "en - English" en Special:Preferences (se informó en phab:T126744). Afecta a relativamente pocos usuarios de la Wikipedia en inglés y se puede ignorar.
La ordenación por año de una columna funciona siempre que el año sea el primer texto de cada celda de la columna. Añadir datos data-sort-type=date
al encabezado de la columna no cambia esto.
Se permite incluir texto después de un año en una celda. Por ejemplo, "FY" ( año fiscal ) debe ir después del año. Las referencias después del año están bien. Coloque "c." después del año o utilice "est." después del año en su lugar.
Un guion, de cualquier tipo, en una celda en blanco interrumpe la clasificación por año de una columna. Los guiones después del año están permitidos.
A diferencia de la ordenación numérica, la plantilla {{ N/A }} en cualquier celda de una columna de año no interrumpe la ordenación por año de esa columna.
Si hay problemas con la ordenación por año, verifique si hay celdas en la columna que tengan texto o un guión (de cualquier tipo) como primer elemento de la celda. Elimine ese texto o guión y la columna debería ordenarse correctamente.
La ordenación por fecha no funciona para columnas que solo tienen el año antes del mes (sin día).
Agregar data-sort-type=date
o data-sort-type=isoDate
al encabezado de columna no ayuda. Haga clic en cada encabezado de columna un par de veces en las tablas a continuación para ver. Tenga en cuenta que el encabezado de columna data-sort-type=isoDate
puede ordenarse correctamente en algunos navegadores, pero no es confiable.
El año y el mes en formato numérico (AAAA-MM) funcionan condata-sort-type=isoDate
(consulte la sección correspondiente más abajo).
La ordenación por fecha no funciona para columnas que solo tienen el mes antes del año (sin día). Agregar datos data-sort-type=date
al encabezado de la columna no ayuda.
Esto demuestra que cualquier fecha completa funciona sin data-sort-type=date en la tabla. Mes-día-año o día-mes-año. Si falta un número para un día, la ordenación por fecha no funciona. Los meses abreviados también funcionan. El año debe estar al final y no se puede usar un número para el mes. Cualquiera de estos dos métodos interrumpirá la ordenación por fecha.
La ordenación por fecha funciona correctamente en las primeras 2 tablas que aparecen a continuación. Los años anteriores al 100 (por ejemplo, el año 99) interrumpen la ordenación.
data-sort-type=date en el encabezado de la columna de fecha permite que la ordenación por fecha funcione para todas las entradas que no tengan un número de día faltante. Por lo tanto, es bueno agregarlo en caso de que los editores olviden los números de día de algunas entradas. Esto se puede solucionar más adelante. El resto de las fechas se ordenarán correctamente por fecha. Pruebe la ordenación por fecha a continuación. A algunas de las entradas a continuación les falta el número de día. Terminan en la parte superior o inferior de la lista data-sort-type=date al ordenarlas. La lista a continuación sin data-sort-type=date no ordena por fecha.
Las dos tablas siguientes son idénticas excepto por la adición de data-sort-type=date a la segunda tabla.
{| class = "wikitable sortable" |- ! data-sort-type = date | Fechas completas.<br><code>data-sort-type=date</code>
La clasificación no funciona para este orden de fechas.
La adición de cualquier tipo de ordenación de datos al encabezado de la columna no ayuda. Vea los ejemplos a continuación.
Consulte: Fecha ISO . "±AAAA-MM-DD", con 1 a 4 dígitos para el año "AAAA" de -9999 a 9999. El año por sí solo está bien. Al igual que el año seguido solo del mes. Se permiten algunos elementos después de la fecha. Como referencias después de la fecha. Para ahorrar espacio en el encabezado, puede agregar una información sobre herramientas al encabezado de la columna "Fecha" en lugar de "año, mes, día" debajo. Consulte: Plantilla:Tooltip . Se han agregado descripciones emergentes a las tablas de esta sección.
Consulte la sección anterior: #Ejemplos de detección automática de tipos de datos. Las primeras 5 celdas de una columna. La detección automática de tipos de datos es inconsistente. Por eso, la ordenación de fecha ISO funciona mejor si data-sort-type=isoDate
se agregan al encabezado de la columna. También evita problemas cuando solo se usa un dígito para el mes o el día. Los ceros a la izquierda ya no son necesarios. Todas las tablas a continuación se data-sort-type=isoDate
agregaron a los encabezados de columna.
Recuerde dejar un espacio en el wikitexto antes de los años que sean números negativos. De lo contrario, |-
se utilizará como formato de tabla en lugar de |
.
" c. " significa circa (aproximadamente). " c. " antes de la fecha interrumpe la ordenación en la primera tabla. El uso de la plantilla {{ circa }} corrige la ordenación, pero solo si sortable=yes
se agrega el parámetro a la plantilla. Consulte: Plantilla:Circa/doc/sortable . Consulte: #c. para circa.
{| class = "wikitable sortable" |- ! data-sort-type = isoDate | {{Tooltip|Fecha|Año, mes, día}}<br><small>{{tl|circa}} usado.<br>La ordenación funciona.</small> |- | -90 |- | {{ circa | sortable = yes | 90 }} |- | 90-7-13 |- | 90-12-5 |- | 1011-08-01 < sup style = "color:gray" > [2] </ sup > |- | {{ circa | sortable = yes | 207-11 }}< sup style = "color:gray" > [1] </ sup > |}
Añadir a. C., d. C., a. C., etc. después de la fecha no altera la clasificación, pero añadir d. C. antes de la fecha sí la altera. Pruebe las adiciones antes y después de las fechas. Las adiciones antes de la fecha casi siempre son un problema.
De esta versión de la Lista de avistamientos de ovnis reportados . La sección "Antigüedad" tiene una tabla con algunas notas ocultas. Adaptado aquí:
Para ordenar las fechas anteriores al año 1000 d. C., necesitará uno de los siguientes:
|data-sort-value="XXXX"
- Año. Utilice ceros a la izquierda y números negativos para AC.{{Date table sorting|X}}
- Utilice el carácter negativo para AC. Consulte: {{ Ordenación de la tabla de fechas }} .{{circa|sortable=yes|lk=no|X}}
- {{ circa }} es solo AD.La columna de fecha a la que hace referencia se extrajo de la tabla más grande, se simplificó y se colocó a continuación. Se ordena correctamente. Consulta el wikitexto para ver los métodos que se analizan en las notas ocultas.
{| class = "wikitable sortable" |- ! Fecha |- | data-sort-value = -1440 | c. 1440 a. C. |- |{{ Ordenación de la tabla de fechas | -218 }} |- |{{ Ordenación de la tabla de fechas | -76 }} |- |{{ Ordenación de la tabla de fechas | -7 }} |- | data-sort-value = 0065 | d. C. 65 |- | data-sort-value = 0196 | d. C. 196 |- | data-sort-value = 0740 | d. C. c. 740 |}
La forma más sencilla de dar formato a fechas ordenables en una tabla es usar la plantilla {{ Date table sorting }} . Una redirección: {{ dts }}
Se puede utilizar con varios formatos de fecha combinados. Tenga en cuenta los numerosos formatos que se utilizan aquí . Consulte Plantilla:Ordenación de tabla de fechas para obtener más información.
Vea las tablas de ejemplo a continuación. Todas están ordenadas correctamente. El wikitexto de la primera entrada de cada tabla en la primera fila se muestra en el encabezado de la tabla.
Nota: ninguna de las columnas de la tabla utiliza el data-sort-type=
modificador. El uso de este modificador data-sort-type=
puede interrumpir la clasificación cuando se utiliza con la plantilla. Si desea que la columna sea más angosta, puede utilizar abreviaturas de meses ( parámetro abbr=on ). También puede permitir que el texto se ajuste ( parámetro nowrap=off ). Utilice format=dmy o format=mdy , etc. para controlar el formato de salida, si lo desea.
{| class = "wikitable sortable" |- ! Fechas.<br>Varios formatos |- | {{ dts | Ene 1980 }} |- | {{ dts | Ago 1981 }} |- | {{ dts | 1992 }} |- | {{ dts | 28 agosto 1993 }} |- | {{ dts | 1990 | 4 | 27 }} |- | {{ dts | 1989 | 8 | 8 }} |}
Para los años a. C., !9937-09-23
se puede utilizar para -0062-09-23 (62 a. C.): simplemente reste el año a. C. de 10 000.
La ordenación por fecha funciona formateando las fechas para que se puedan ordenar numéricamente. Por ejemplo:
yyyy mm dd
o
2001 07 21
...para el 21 de julio de 2001. El display:none
estilo se puede utilizar para ocultar una fecha numérica ordenable antes de la fecha mostrada. Consulte el wikitexto de la tabla que se encuentra justo debajo. Alternativamente, {{ Date table sorting }} lo hace automáticamente y se recomienda en la mayoría de los casos.
Puede utilizar el 7 de julio de 2012, etc. para obtener fechas que se puedan ordenar. Por ejemplo, si incluye una fecha con un formato de visualización diferente:
Resultado renderizado
Fuente wiki
{| class = "wikitable sortable" |- ! Fecha |- | {{ dts | 2012-01-07 }} |- | {{ dts | 2012-05-07 }} |- | {{ dts | 4 de julio de 2012 }} <!-- Asegurarse de que el formato de fecha de visualización alternativo funciona --> |- | {{ dts | 2012-07-07 }} |}
Agregar color con la propiedad abreviada [a] "background:...;"
en un encabezado puede provocar que esa columna pierda su botón de ordenación (consulte phab:T33755). Ejemplo con el encabezado "Nombre":
Utilice lo más específico
para que las cosas funcionen correctamente. Ejemplo:style="background-color:...;"
{| class = "wikitable sortable" |- ! style = "background-color:navajowhite" | Nombre ! style = "background-color:navajowhite" | [[Apellido]] ! style = "background-color:navajowhite" | Altura |- | John | Smith | 1,85 |- | Ron | Ray | 1,89 |- | Mario | Bianchi | 1,72 |- class = "sortbottom" | colspan = "2" | Promedio: | 1,82 |}
Produce esta tabla ordenable:
A veces, las entradas se rellenan a la izquierda para alinearlas, lo que puede afectar negativamente la forma en que se ordenan.
El efecto del relleno a la izquierda con códigos de espacio indivisibles
que se representan como espacios en blanco depende del navegador: en IE, se cuentan (a diferencia de los espacios en blanco reales) para la clasificación como espacios en blanco iniciales, por lo que en una lista de números con texto (para la que se aplica el modo de clasificación alfabético) se podrían usar para igualar la cantidad de caracteres antes del separador decimal explícito o implícito. Sin embargo, en Firefox se ignoran para el propósito de la clasificación.
Véase también Discusión:Lista de estados y territorios de EE. UU. por población/Archivo 1#Tabla ordenable .
Ejemplo:
Formatnum se puede combinar con padleft :
Entero
{{formatnum:{{padleft:299792458|16|0}}}}
gives:
Real
{{formatnum:{{padleft:{{#expr:((299792458.056 - .5) round 0)}}|16|0}}}}.{{padleft:{{#expr:(1000000*(299792458.056 - ((299792458.056 - .5) round 0))) round 0}}|6|0}}
gives:
Texto no deseado para la clasificación pero necesario para la visualización:
Texto no deseado para mostrar pero necesario para ordenar:
Combinando los dos, podemos tener texto mostrado independientemente del texto usado para ordenar, ocultando completamente este último y colocando completamente el primero en una columna separada (en modo de ordenación por fecha y modo de ordenación numérica) o en la misma columna después del texto oculto (en ordenación alfabética). Colocar completamente el texto mostrado en una columna separada puede verse feo si no se hace de manera consistente para una columna completa, sino solo para elementos que lo requieren (por ejemplo, si la mayoría de las entradas en una columna son números únicos, pero algunas son rangos).
Para habilitar la ordenación de celdas con Plantilla:Aumentar , Plantilla:Disminuir o Plantilla:Establecer , agregue una clave de ordenación, por ejemplo, 2, 1 o . Para corregir una tabla existente, use Buscar y reemplazar (icono derecho en la barra de herramientas Avanzada) con Tratar la cadena de búsqueda como una expresión regular seleccionado para realizar los siguientes reemplazos:{{increase|2}}
{{decrease|-1}}
{{steady|0}}
Solía ser difícil mantener las tablas ordenadas por rango y mantener la numeración correcta. Esto ya no es así. La plantilla:Números de fila estáticos renumera los números de fila después de cada cambio en el orden de filas y después de cada adición o eliminación de filas.
Hay formas rápidas y lentas de hacer esto. Lamentablemente, el Editor visual no tiene una forma rápida de alfabetizar rápidamente una tabla. Puede mover manualmente las filas de a una por vez. Haga clic en una celda de una fila. Luego haga clic en la flecha que aparece a la izquierda de la fila. Luego haga clic en "mover arriba" o "mover abajo" según sea necesario. Si esto tiene errores o no funciona, las filas se pueden mover en el wikitexto cortando y pegando filas en el wikitexto.
Una forma rápida de hacerlo es iniciar la aplicación gratuita Calc de LibreOffice u otro programa de hojas de cálculo . Para ver cómo hacerlo, vaya a Ayuda:Creación de tablas#Ordenar. Hojas de cálculo y VE . Para obtener más información, consulte Commons:Convertir tablas y gráficos en código wiki o archivos de imagen.
Existe otra forma de ordenar alfabéticamente una tabla, que conserva todos los estilos y enlaces de indicadores que una hoja de cálculo puede eliminar. Se puede utilizar NoteTab Light (versión gratuita de NoteTab). Pero para que esto funcione, todo el wikitexto de una fila debe estar en una línea. Eso significa que las celdas de esa fila están separadas por barras dobles ||
.
Para ordenar alfabéticamente la lista por la primera columna, pegue el wikitexto de la tabla en una nueva página de NoteTab Light. Seleccione las filas que desea ordenar alfabéticamente. Luego haga clic en el menú "modificar", luego en "líneas", luego en "ordenar" y luego en "ascendente". Eso colocará "A" en la parte superior y "Z" en la parte inferior.
Luego, vuelva a colocar |-
(wikitexto para la fila) entre cada línea. Hágalo mediante la función buscar y reemplazar reemplazando ^p
con^p|-^p
^p
es el código del editor de texto subyacente para los saltos de línea en NoteTab.|-
es el wikitexto de una fila de la tabla.Si hay líneas en blanco entre las entradas, reemplácelas ^p^p
con^p|-^p
Copia el wikitexto y pégalo nuevamente en el artículo. Guarda la página.
Es una buena idea mantener las listas y tablas en algún tipo de orden de clasificación inicial no aleatorio. Ya no importa qué método elija. La plantilla:Números de fila estáticos mantendrá la numeración de filas automáticamente sin importar los cambios que realice en el orden de filas.
Puede eliminar las celdas de la columna de rango rápidamente. Ahora es mucho más fácil con el editor de tablas en el Editor visual . Haga clic en el encabezado de la columna que desea eliminar. Aparecerá una flecha en la parte superior de la columna. Haga clic en la flecha y luego en "Eliminar columna".
Luego, deje que Template:Static row numbers cree la columna de número de fila.
Hay hilos de Phabricator que piden una forma de agregar fácilmente números de fila estáticos a las tablas. Consulte phab:T42618. Reemplaza phab:T42634.
Mientras tanto, existe la plantilla:Números de fila estáticos . Ahora es fácil de usar. Es una plantilla para agregar automáticamente números de fila a tablas ordenables. Los números de fila no se ordenarán cuando se ordenen las columnas de datos. Una posible nota para agregar sobre una tabla: los números de fila son estáticos. Las demás columnas se pueden ordenar. Esto permite la clasificación de cualquier columna.
Ver lista de artículos que incluyen . Ver recuento de transclusiones.{{static row numbers}}
Tiene algunas subplantillas que funcionan con él. Vaya a {{ static row numbers }} para obtener más detalles.
Para ver la plantilla en uso: Lista de estados y territorios de EE. UU. por tasa de encarcelamiento y supervisión correccional .
Tenga en cuenta que style=max-width:Xem
se utiliza de forma selectiva para limitar las columnas con texto de encabezado con muchas palabras sin utilizar saltos de línea. Los saltos de línea molestan a las personas que utilizan lectores de pantalla debido a las pausas.
El uso selectivo de max-width permite que los nombres de los estados se distribuyan y permanezcan en una fila cada uno si la pantalla es lo suficientemente ancha. Esto permite una lectura más fácil hacia abajo o a lo largo de las filas. Sin embargo, cuando la pantalla se vuelve cada vez más angosta, los nombres de los estados se terminan ajustando. Esto es bueno para los teléfonos celulares. Use la configuración de la unidad em en lugar de px . Las unidades em se expanden en ancho a medida que aumenta el tamaño de la fuente.
Asegúrese de comprobar tanto la vista móvil como la de escritorio (enlaces en la parte inferior de la página). Compruebe que las filas de encabezado no tengan un número de fila. Compruebe también que la configuración de ancho máximo no sea demasiado estricta. La vista móvil puede necesitar una configuración de ancho máximo ligeramente mayor para algunas columnas. Además, los distintos navegadores de escritorio y las distintas configuraciones para ellos pueden hacer que algunas configuraciones de ancho máximo provoquen que el texto del encabezado de una columna se superponga con la columna adyacente. Por lo tanto, suele ser bueno agregar algunas unidades em adicionales a la configuración de ancho máximo.
data-sort-type:text - Ordene la siguiente tabla para ver un ejemplo del orden de clasificación alfabético.
Tenga en cuenta que la ordenación no distingue entre mayúsculas y minúsculas: las entradas de dos caracteres como A1 demuestran que A y a están en la misma posición.
data-sort-type:number - Ordene la siguiente tabla para ver un ejemplo del orden de clasificación numérico.