stringtranslate.com

Ayuda: Tablas ordenables

Para obtener más ayuda, consulte Ayuda:Tabla , Ayuda:Tablas y editor visual , Ayuda:Creación de tablas , Ayuda:Wikitable , Ayuda:Marcado básico de tablas , Ayuda:Tabla/Avanzado , WP:Formato avanzado de tablas , Ayuda:Tablas y ubicaciones , y Ayuda:Tablas ordenables. Para obtener información sobre estilos, consulte Wikipedia:Manual de estilo/Tablas . Para obtener información sobre accesibilidad, consulte Wikipedia:Manual de estilo/Accesibilidad/Tutorial de tablas de datos .

Creación de tablas ordenables

El panel de propiedades de una tabla en el Editor Visual le permite marcar una tabla como ordenable.

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.

Ejemplo sencillo

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.

Orden de clasificación inicial de filas

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.

Uso de tablas ordenables

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.

Ejemplo

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

Tablas con encabezados complejos

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:

Tablas con filas de datos fusionados

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

Editores de tablas en línea y rowspan

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.

Ordenación por clave secundaria y multiclave

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  →Vacío 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.

Optimización de tablas para una visualización estrecha

Encabezados verticales

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 rowspany col span). Tenga en cuenta que no hay una barra vertical |entre rowspan=2y{{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 |} 

Ordenar por plantilla

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

Restricciones y exclusiones

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.

Cómo hacer que las columnas seleccionadas no se puedan ordenar

Si desea que una columna específica no se pueda ordenar, especifíquelo class=unsortableen los atributos de su celda de encabezado. Si tiene una fila de ordenación, class=unsortabledebe estar en la celda de encabezado con el ícono de ordenación.

(Al usar {{ vert header }} , deshabilite la ordenación de columnas omitiendo |stp=1esa 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

Excluyendo las filas finales de la clasificación

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=sortbottomen 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=rowhace 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=sortbottompermanecerán en la parte inferior incluso si originalmente no estaban en la parte inferior.

Excluyendo las filas superiores de la clasificación

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.

Configurando la ordenación

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 .

Forzar que una columna tenga un tipo de datos particular

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.información 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:

tipo de ordenamiento de datos=texto

data-sort-type=textUtiliza 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=textel 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

Tipo de datos predeterminado de una columna

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:

fecha (ver también abajo)
  • Criterio: el primer elemento que no está en blanco tiene el formato "DD-MM-AAAA", "DD-MM-AA" o "DD mmm AAAA"
  • orden: valor numérico de AAAAMMDD; La cadena DDsMMsAAAA de longitud 10 (si los caracteres posicionados en s son iguales juntos y son separadores '/' o '-') se posiciona como AAAAMMDD, la cadena DDsMMsAA de longitud 8 (si los caracteres posicionados en s son iguales juntos y son separadores '/' o '-') como 19AAMMDD si YY >= 50 y 20AAMMDD en caso contrario, y la cadena "DD mmm AAAA" con mmm un nombre de mes (abreviado).
Fecha iso (ISO 8601)
  • criterio: formato "±AAAA-MM-DD", con 1-4 dígitos para el año "AAAA" de -9999 a 9999, mes solo con dígitos, formato "±AAAA-MM-DDThh:mm:ss.sss±TH:TM" con hora "hh", minutos "mm", segundos "ss.sss", y diferencia horaria "TH:TM, los valores de la derecha son opcionales.
  • orden: numérico, con tiempo en milisegundos después del 1 de enero de 1970 UTC.
Moneda (este modo también puede ser útil para otros datos)
  • Criterio: el primer elemento que no esté en blanco comienza con $, £, € o ¥.
  • orden: numérico, ignorando estos símbolos y todas las letras y comas comunes, pero no los espacios; tenga en cuenta que no se puede utilizar notación científica, ya que se eliminan e y E
número
  • criterio: el primer elemento que no está en blanco consta solo de dígitos, puntos, comas, espacios, "+", "-", posiblemente seguido de "e" o "E" y una cadena que consta de "+", "-", dígitos
  • orden: después de quitar las comas y los espacios, si los hay, si la cadena comienza con un número, el orden es numérico de acuerdo con el primer número de la cadena (se aplica parseFloat); se considera cero si está vacío; en otros casos (parseFloat devuelve NaN ), el elemento se posiciona como -∞.
cadena
  • criterio: todos los demás casos;
  • orden: utiliza un orden específico de la configuración regional (en este caso, inglés) si su navegador lo admite. Alternativamente, después de la conversión de mayúsculas a minúsculas, el orden es ASCII (lista parcial que muestra el orden): !"#$%&'()*+,-./09:;<=>?@[\]^_'az{|}~é— (ver también a continuación; un espacio en blanco va antes de cualquier otro carácter; un código de espacio indivisible&nbsp; cuenta como un espacio; dos espacios en blanco ordinarios adyacentes cuentan como uno; para múltiples espacios en blanco, se pueden usar &nbsp;o alternar &nbsp;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.

Cómo especificar una clave de ordenación para una celda

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-valueatributo:

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="&quot;WORD"

data-sort-value="&#34;WORD"

Manteniendo algunas filas juntas

data-sort-valueSe 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. |}             

Ejemplos de detección automática de tipos de datos. Las primeras 5 celdas de una columna

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-typeal 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.

Problemas de ordenamiento numérico

Nota: Consulte la sección anterior sobre la detección automática de tipos de datos a través 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=numberen 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=numberdebe 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=numberen 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=numberal 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=numberse 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-typeen el encabezado de la columna.

c. por alrededor de

" 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=yesparámetro se agrega a la plantilla. Consulte: Plantilla:Circa/doc/sortable .

{{circa|NUMBER|sortable=yes}}
NÚMERO c.  NÚMERO

Alternativamente, se puede colocar c. después del número o moverlo a una columna diferente.

Rangos numéricos

Nota: La mayoría de los problemas se solucionan agregando información data-sort-type=numberal 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=numberen sus encabezados de columna.

data-sort-type=numberSe ha corregido la clasificación en las tablas siguientes. Observe la clasificación de 400+ y 400 + .

Problemas de ordenación de fechas

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.

Nombres de los meses

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.

Solo año

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=dateal 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.

Año y mes

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=dateo data-sort-type=isoDateal 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=isoDatepuede 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).

Mes y año

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=dateal encabezado de la columna no ayuda.

Las fechas completas son válidas. El año debe estar al final.

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>   

Año, mes, día. Uso de palabras para los meses

La clasificación no funciona para este orden de fechas.

tipo de ordenación de datos=fecha
tipo de ordenación de datos=isoDate

La adición de cualquier tipo de ordenación de datos al encabezado de la columna no ayuda. Vea los ejemplos a continuación.

Año, mes, día. Utilizando números. Fecha ISO AAAA-MM-DD

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=isoDatese 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=isoDateagregaron 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=yesse 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.

Los años antes de Cristo son un problema

Nota. Consulte también la sección que aparece más abajo sobre la plantilla de ordenación de la tabla de fechas. Contiene información adicional sobre cómo manejar años negativos (a.C., a.e.c.).

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:

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

Plantilla de ordenación de tablas de fechas. Muchos formatos de fecha

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

Problemas. Años antes de Cristo, etc.

Para los años a. C., !9937-09-23se 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:

o

...para el 21 de julio de 2001. El display:noneestilo 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 }} |}      

Antes del año 100. Cualquier formato de fecha.

Colores de fondo en encabezados ordenables

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:

Consejos y trucos

Relleno

A veces, las entradas se rellenan a la izquierda para alinearlas, lo que puede afectar negativamente la forma en que se ordenan.

Espacios indivisibles

El efecto del relleno a la izquierda con códigos de espacio indivisibles&nbsp; 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 .

Relleno con ceros

Ejemplo:

Formatnum se puede combinar con padleft :

Entero

Real

Control de clasificación y visualización

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).

Ordenar con plantillas de aumento/disminución/establecimiento

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

Mantener las tablas ordenadas alfabéticamente o por rango

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.

Poner una tabla en orden alfabético inicial

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 ^pcon^p|-^p

^pes 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^pcon^p|-^p

Copia el wikitexto y pégalo nuevamente en el artículo. Guarda la página.

Ordenación alfabética inicial versus ordenación inicial por orden de clasificación

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.

Cómo eliminar una columna de rango antigua (1,2,3) de una tabla

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.

Clasificación automática o adición de una columna de numeración de filas (1,2,3)

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:Xemse 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.

Orden de clasificación alfabético

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.

Ejemplos de ordenamiento numérico

data-sort-type:number - Ordene la siguiente tabla para ver un ejemplo del orden de clasificación numérico.

Véase también

Notas

  1. ^ Las propiedades CSS abreviadas permiten que varias subpropiedades se establezcan mediante una sola propiedad y "cuando se omiten valores de una forma abreviada, a menos que se defina lo contrario, a cada subpropiedad 'faltante' se le asigna su valor [predeterminado]. Esto significa que una declaración de propiedad abreviada siempre establece todas sus subpropiedades, incluso aquellas que no se establecen explícitamente. Si se utiliza sin cuidado, esto puede dar como resultado el restablecimiento inadvertido de algunas subpropiedades". Ciertas propiedades de fondo CSS obligatorias establecidas en encabezados de tablas ordenables podrían ser anuladas por reglas de fondo establecidas para cada tabla. [1]

Referencias

  1. ^ "CSS Cascading and Inheritance Level 4: Shorthand Properties" (Cascada CSS y herencia de nivel 4: propiedades abreviadas). W3C . 10 de octubre de 2022. Archivado desde el original el 11 de diciembre de 2022 . Consultado el 19 de diciembre de 2022 .