Las barras de progreso visuales ofrecen una instantánea rápida el estado de un proceso, mejora la estética y es una fuente sutil de motivación. No son realmente una función nativa de Notion pero podemos conseguirlas al combinar caracteres especiales con algunas funciones de Notion y el resultado es realmente atractivo.
Funciones necesarias
Para crear barras de progreso, utilizaremos estas tres funciones.
slice(texto, número, número)
La función slice() nos devuelve un segmento o parte del texto que le hayamos proporcionado. Esta función necesita al menos dos parámetros, aunque opcionalmente podemos usar tres:
- Texto origal del que vamos a obtener una parte.
- Punto de inicio, donde el primer caracter es
0
. - Punto final (opcional)
Ejemplo 1: slice("La Colmena Tecnológica.", 3, 10)
→ “Colmena”
Ejemplo 2: slice("La Colmena Tecnológica.", 11, 22)
→ “Tecnológica”
Los espacios en blanco también cuentan como un carácter. El parámetro punto final a deferencia del punto de inicio no incluye el carácter, por eso para incluir el caracter final deberemos poner la posición justo después a este.
round(número)
La función round() redondea un número decimal proporcionado al entero más cercano.
Ejemplo 1: round( 3.2 )
→ 3
Ejemplo 2: round( 3.5 )
→ 4
format(valor)
La función format() convierte un número o fecha proporcionado en una cadena de texto.
Ejemplo: format( 20 )
→ "20"
Propiedad porcentaje
Para visualizar tu progreso, primero debes calcularlo como un porcentaje dentro de una propiedad independiente.
Para cada proyecto en tu base de datos, es posible que tenga una propiedad para las unidades totales requeridas para completar, luego otra propiedad para las unidades actualmente completadas.
En una propiedad Progreso %, dividimos las unidades completadas por las unidades totales:
prop("Unidades completadas") / prop("Unidades totales")
Aquí puedes ver como puedes eliminar los antiestéticos decimales en una fórmula que nos de como resultado un porcentaje.
round(100 * prop("Unidades completadas") / prop("Unidades totales")) / 100
Caracteres especiales para crear nuestra barra de progreso
La barra de progreso incluirá caracteres especiales para representar los segmentos completos e incompletos. Aunque puedes elegirlos a tu gusto, aquí te dejo algunas sugerencias:
- Sombreados → ▓░
- Estrellas → ★☆
- Círculos → ●○
Con la propiedad de Progreso % creada y los caracteres especiales determinados, ya podemos crear la barra de progreso. Crea una nueva propiedad Fórmula, y asígnale el nombre Progreso y luego agrega esta fórmula:
Código con caracteres sobreados
slice("▓▓▓▓▓▓▓▓▓▓", 0, round(prop("Progreso %") * 10)) + slice("░░░░░░░░░░", 0, 10 - round(prop("Progreso %") * 10)) + " " + format(round(prop("Progreso %") * 100)) + "%"
Código con caracteres Estrellas
slice("★★★★★★★★★★", 0, round(prop("Progreso %") * 10)) + slice("☆☆☆☆☆☆☆☆☆☆", 0, 10 - round(prop("Progreso %") * 10)) + " " + format(round(prop("Progreso %") * 100)) + "%"
Código con caracteres Círculos
slice("●●●●●●●●●●", 0, round(prop("Progreso %") * 10)) + slice("○○○○○○○○○○", 0, 10 - round(prop("Progreso %") * 10)) + " " + format(round(prop("Progreso %") * 100)) + "%"
Solo tienes que sustituir los símbolos en la fórmula por los que más te gusten.