Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Filtrar Resultados del Gráfico

Los filtros muestran un subconjunto de resultados que cumplen con un criterio determinado. Atlas Charts proporciona dos maneras de filtrar los datos para una sola gráfica. Puedes usar:

  • La Filtra campos numéricos, string, de fecha o booleanos en la Pestaña de filtro para gestionar la mayoría de tus necesidades de filtrado de datos.

  • La Query Bar para filtrar tus datos utilizando consultas más complejas, como consultas con operadores lógicos, o procesar datos sin procesar utilizando la pipeline de agregación.

Para aprender cómo filtrar resultados en varios gráficos de tu tablero, consulta Filtrar paneles por valores de campo.

El constructor de gráficos contiene una pestaña de filtros donde puedes arrastrar y soltar campos para especificar filtros para tus datos. Para filtrar datos usando la pestaña de filtro:

  1. Haz clic en la pestaña central en el generador de gráfica:

    Imagen que muestra cómo acceder a la pestaña de filtros

  2. Arrastre un campo desde el Fields en la izquierda, en la sección Chart Filters de la pestaña.

El tipo de datos del campo seleccionado determina las opciones de filtrado disponibles. Puede filtrar campos con los siguientes tipos de datos:

Cuando arrastra un campo numérico al panel de filtro, puede filtrar según los valores mínimos y/o máximos para ese campo.

Para especificar un valor mínimo:
Para especificar un valor máximo:
  1. Establece Min en On.

  2. Especifique el valor mínimo deseado.

  3. Seleccione si este es un valor mínimo inclusivo.

  1. Establece Max en On.

  2. Especifique el valor máximo deseado.

  3. Selecciona si este es un valor máximo inclusivo.

Ejemplo

Si tienes un valor mínimo de 5 con la opción Inclusive activada, Atlas Charts muestra documentos donde el campo es mayor o igual a 5.

Alternativamente, si Inclusive está desactivado, Atlas Charts muestra los documentos donde el campo es mayor que 5.

Cuando arrastras un string o un campo ObjectId al panel de filtro, Atlas Charts muestra una lista de hasta 20 valores distintos del campo. Si existen más de 20 valores distintos, Atlas Charts muestra 20 valores seleccionados al azar.

La lista también incluye:

  • NULL / MISSING para documentos con valores null para el campo o los que no tienen el campo.

  • Empty String para documentos con "" valores para el campo de cadena. (Solocampos de cadena).

Selecciona los valores que se mostrarán en la gráfica. Por defecto, se seleccionan todos los valores.

Tip

Si se seleccionan todos los valores, puede hacer clic en Deselect All en la parte superior de la lista para ocultar todos los valores.

Si no se seleccionan todos los valores, puede hacer clic en Select All para volver al estado predeterminado de tener todos los valores mostrados.

Para mostrar un valor específico no incluido en la lista, agregue el valor haciendo clic en Add Value.

Importante

Para los campos ObjectId, el valor que ingreses debe ser un ObjectId bien formado, de lo contrario, Atlas Charts no acepta el valor.

Para mostrar todos los demás valores que no están en la lista, marque All other values.

  • Si All other values se marca, Atlas Charts filtra cualquier elemento de lista no marcado mediante una $nin consulta.

  • Si All other values no está marcado, Atlas Charts solo incluye los elementos de la lista marcados mediante una $in consulta.

Al arrastrar un campo de fecha al panel de filtros, se puede filtrar según un rango de fechas específico. Este rango puede ser:

  • Un rango de fechas relativo, que especifica un rango relativo al momento en que se representa la gráfica (por ejemplo, los últimos seis meses).

  • Un rango de fechas basado en la hora actual en que se representa el gráfico, con una selección de períodos.

  • Un rango de fechas absoluto, que es un rango entre fechas de inicio y finalización específicas.

Selecciona la pestaña apropiada para obtener más información sobre el filtro de fechas:

Los filtros de fechas relativas especifican un rango relativo al momento en que se representa la gráfica. Para definir el rango de fechas, especifica un periodo de tiempo en el pasado y/o un periodo de tiempo en el futuro en función de la fecha actual. Relative es la opción por defecto para el filtrado de fechas.

Para establecer un límite inferior para el filtro de fecha:
Para establecer un límite superior para el filtro de fecha:
  1. Active la palanca From.

  2. Establece el límite inferior para tu fecha relativa. Este lapso de tiempo es relativo a la fecha actual.

  1. Active la palanca Until.

  2. Establece el límite superior para tu fecha relativa. Este lapso de tiempo es relativo a la fecha actual.

Ejemplo

El siguiente filtro de fecha relativa solo muestra documentos con un campo Workout Date (As Date) que sea más reciente que hace un año desde la fecha actual:

Imagen que muestra el filtro de fecha relativa

Los filtros de fecha de período especifican un rango relativo a la hora actual en que se muestra el gráfico. Para definir un rango de fechas de período, seleccione Period en la parte superior de la tarjeta de filtro de fecha.

Las opciones de periodo incluyen:

  • Hour desde el inicio de la hora

  • Day desde la medianoche

  • Week desde la medianoche del domingo

  • Month a partir de la medianoche del 1del mes

  • Year desde la medianoche del 1de enero

El filtro por fechas de período también tiene opciones de uso. Junto con el período, las opciones de uso te permiten definir una ventana exacta de tiempo en el pasado, presente o futuro.

Las opciones de uso del periodo incluyen:

  • Dirección. Puedes seleccionar Previous para mostrar períodos pasados o Next para mostrar períodos futuros.

  • Contar. Puede establecer el número de períodos a mostrar.

  • Incluir periodo actual. Puedes incluir el periodo actual en la ventana de tiempo especificada.

Las opciones de uso de periodos funcionan en conjunto. Los datos que muestran los Atlas Charts para el período Month dependen de la dirección, el conteo y la selección de Include current period.

Atlas Charts cuenta el número de periodos especificados hacia atrás (para Previous) o hacia adelante (para Next). El conteo comienza al principio del periodo actual (con Include current period seleccionado) o al principio del último periodo completado (sin Include current period seleccionado). Atlas Charts muestra los datos desde el principio hasta el final de los periodos seleccionados.

Ejemplo

Si hoy es diciembre 8 y establece un filtro de fecha de período en released con las siguientes selecciones:

  • Previous

  • 3

  • Months, y

  • Include current period seleccionado

Atlas Charts mostraría documentos con una fecha de lanzamiento desde octubre de este año, el 1, hasta diciembre de este año, el 31, incluidos las fechas de inicio y finalización.

Imagen que muestra el filtro de fecha del período

Sin embargo, si configuras el mismo filtro sin seleccionar Include current period, Atlas Charts mostraría documentos con una fecha de lanzamiento desde septiembre 1 de este año hasta noviembre 30 del mismo año, incluidas las fechas de inicio y finalización.

Para configurar un filtro de fecha periódica:

  1. Selecciona una dirección de periodo en el primer menú desplegable.

  2. Introduce un valor numérico para el recuento de períodos en el campo de entrada de texto. Puede ingresar números enteros o valores decimales.

  3. Elija un período del siguiente menú desplegable.

  4. (Opcional) Deselecciona Include current period para excluir el periodo actual. Include current period es la selección por defecto.

Los filtros de fecha absoluta utilizan fechas absolutas para definir sus límites superior e inferior. Para definir un rango de fechas absoluto, seleccione Absolute en la parte superior de la tarjeta de filtro de fecha. De forma predeterminada, se asume que las fechas especificadas en el filtro están en UTC, coincidiendo con los datos sin procesar en la colección. Puedes especificar una zona horaria para su filtro y ajustar los valores de fecha según se desee.

Para establecer un límite inferior para el filtro de fecha:
Para establecer un límite superior para el filtro de fecha:
  1. Active la palanca From.

  2. Ingrese una fecha para su límite inferior o seleccione una fecha del calendario que aparece debajo del campo de entrada.

  3. Introduce una hora para tu límite inferior o selecciona una hora de la lista que aparece debajo del campo de entrada.

  4. Establezca Inclusive para determinar si se debe incluir la fecha especificada.

  1. Active la palanca To.

  2. Introduce una fecha para tu límite superior o selecciona una fecha en el calendario debajo del campo de entrada.

  3. Introduce una hora para tu límite superior o selecciona una hora de la lista debajo del campo de entrada.

  4. Establezca Inclusive para determinar si se debe incluir la fecha especificada.

Nota

El formato de fecha y hora que se utiliza en tus límites depende de tu ubicación, tal como se determina a partir de la configuración de tu navegador.

Ejemplo

El siguiente filtro de fecha absoluta solo muestra documentos con un campo Workout Date (As Date) del año 2018:

Imagen que muestra el filtro de fecha absoluta

El filtro devuelve todos los documentos con un campo Workout Date (As Date) desde January 1, 2018 12:00:00 AM inclusive, hasta January 1, 2019 12:00:00 AM exclusivamente.

Usa el menú desplegable Time Zone en la parte inferior de la tarjeta de filtro para especificar una zona horaria para tu filtro de fechas absolutas.

De forma predeterminada, MongoDB almacena los valores de fecha en UTC. Al cambiar la zona horaria, Charts modifica los valores de fecha con respecto a la zona horaria seleccionada. Como resultado, el filtro de fecha absoluta puede devolver diferentes documentos según la zona horaria seleccionada.

Ejemplo

Considera un filtro de fecha absoluta que abarca desde el 1 de enero de 2018 a las 12:00:00 AM inclusive hasta el 1 de enero de 2019 a las 12:00:00 AM exclusivamente. Por defecto, un documento con una fecha UTC del 1 de enero de 2019 a las 2:00:00 a.m. no estaría incluido en este rango de fechas. Sin embargo, si ajustamos la zona horaria a Central America (UTC-06:00), este documento se devolvería porque la fecha ajustada es el 31 de diciembre de 2018 a las 8:00:00 PM.

Puedes filtrar los datos de la gráfica basados en el valor booleano de un campo específico. Arrastra un campo booleano al panel de filtro para ver las opciones disponibles:

  • True muestra documentos donde el valor del campo es true.

  • False muestra documentos donde el valor del campo es false.

  • NULL / MISSING muestra documentos donde el campo es null o no existe.

Todas las opciones están seleccionadas por defecto. La vista previa del gráfico se actualiza al modificar las opciones seleccionadas. Al deseleccionar todas las opciones, se muestra un gráfico en blanco.

Ejemplo

Una gráfica que use el siguiente filtro solo muestra documentos donde el campo passed es true. La gráfica no muestra documentos donde el campo passed está en false, null, o no existe.

Imagen que muestra un filtro booleano

Nota

No puede usar el mismo campo en varios filtros.

Puede activar o desactivar un filtro en la pestaña Filter. Los filtros desactivados no afectan a los documentos que aparecen en el gráfico. Los filtros desactivados aparecen atenuados y no se pueden editar hasta que se activen.

Para alternar si un filtro está habilitado, pase el cursor sobre un filtro y configure el interruptor que aparece en la parte superior del filtro en la configuración deseada.

Imagen que muestra el cambio de filtro
haga clic para ampliar

Puedes expandir o contraer las tarjetas de filtros de la gráfica haciendo clic en Show o Hide en esa tarjeta.

Los filtros deshabilitados se contraen automáticamente.

Los filtros habilitados y contraídos aún se aplican a sus gráficos.

La barra Query sobre la visualización de gráficas admite consultas más complejas que el panel de filtros. Además, puedes utilizar la barra de query para crear pipeline de agregación para procesar tus datos antes de que se muestren.

Para filtrar datos utilizando la barra Query:

  1. En la Query barra, introduzca un documento de filtro. Use la misma sintaxis que en la sección de consulta del método db.collection.find(). El documento de filtro debe estar entre llaves.

  2. Haga clic en Apply.

Las siguientes pestañas muestran cómo construir queries con los siguientes operadores:

  • $or operador lógico para cotejar documentos donde al menos una cláusula es verdadera

  • $exists operador del query para hacer coincidir documentos con un elemento que existe

  • $regex Operador de consulta para hacer coincidir documentos con una expresión regular

  • Date campo para hacer coincidir documentos con fechas específicas

El siguiente gráfica muestra los 5 países principales (Limit Results bajo la X Axis estaba habilitada y configurada en 5) en términos del número de directores que han realizado ya sea un documental o una película biográfica.

Ejemplo de query de operador lógico
haga clic para ampliar

La gráfica utiliza la siguiente query:

{
$or: [
{
genres: "Documentary"
},
{
genres: "Biography"
} ]
}

genres es un arreglo donde cada elemento es un género cinematográfico. Este filtro asegura que solo los directores que hayan realizado un documental o una película biográfica estén incluidos en el recuento total de directores para un país en particular.

El siguiente gráfico muestra las calificaciones promedio de Metacritic de las películas a lo largo del tiempo, agrupadas por 5 períodos de años.

Ejemplo de comparación de query
haga clic para ampliar

La gráfica utiliza la siguiente query:

{ 'writers.1': { $exists: true }}

writers es un arreglo donde cada elemento es un escritor que contribuyó a la película. Este filtro garantiza que solo los documentos con al menos dos autores se tengan en cuenta en la valoración media de Metacritic al comprobar que exista el segundo elemento del arreglo.

Utiliza el operador del query $regex para filtrar usando una expresión regular:

{ <field>: { $regex: "pattern", $options: "<options>" } }

Por ejemplo, para encontrar todos los documentos donde el campo jobs comienza con la letra A, escribiría lo siguiente en la barra Query:

{ "jobs" : { $regex : "^A" } }

Para encontrar todos los documentos donde el campo jobs comienza con la letra A o a, debes escribir lo siguiente en la barra Query:

{ "jobs" : { $regex : "^A", $options : "i" } }

La siguiente gráfica muestra los montos totales de ventas de una empresa de suministros de oficina, categorizados por método de compra:

Query de fecha de ejemplo
haga clic para ampliar

La gráfica utiliza la siguiente query:

{
$and: [
{
saleDate: { $gte: new Date("2017-01-01") }
},
{
'items.4': { $exists: true }
} ]
}

Cada documento de la colección representa una única venta. items es un arreglo donde cada elemento es un artículo comprado durante una venta.

Esta query restringe los documentos mostrados solo a aquellos con un saleDate igual o posterior a January 1, 2017 y con al menos 5 elementos en el arreglo items.

Si su consulta no es válida, Charts muestra el ícono en la Query barra.

Haz clic en la barra Query si no se muestra ya para ver los detalles del error. Charts muestra detalles del error para:

  • Errores del lado del cliente, como JSON mal formados, y

  • Errores del lado del servidor, como un MQL no válido.

Ejemplo de error de filtro
haga clic para ampliar

Revisa los detalles del error y ajusta tu query en consecuencia.

  • Los filtros en colecciones grandes pueden presentar problemas de rendimiento si la colección no está debidamente indexada.

  • Las funciones de fecha utilizadas en la barra de query de Atlas Charts son consistentes y compatibles con las funciones de fecha utilizadas en el mongosh. Como resultado, puedes usar:

    • new Date(),

    • ISODate(), o

    • new ISODate().

    La función Date() (a diferencia del constructor new Date()) devuelve la fecha actual como una string, por lo que no se puede usar para consultar fechas en Charts.

Volver

Guardar y reutilizar consultas

En esta página