Ir al contenido

Cifra

Un panel de dashboard: un título, un valor grande, una variación opcional (delta, mostrada como +4.2% en verde o rojo) y una trend opcional dibujada como minigráfico.

ui.stat · Categoría: Datos · Referencia completa →

CifraCifra
  • Para las cifras clave en la parte de arriba de un dashboard o informe.
import pyzed as pz
from pyzed import ui
pz.row([
ui.stat("Users", "1,284", delta=12.5, trend=[3, 5, 4, 6, 8, 7, 9], width=200),
ui.stat("Errors", "37", delta=-8.0, width=200),
ui.stat("Build time", "1m 12s", width=200),
], spacing=12)
Cifra: Solo valorCifra: Solo valor
Solo valor
Código
ui.stat("Build time", "1m 12s", width=190)
Cifra: delta=12.5Cifra: delta=12.5
delta=12.5
Código
ui.stat("Users", "1,284", delta=12.5, width=190)
Cifra: delta=-8.0Cifra: delta=-8.0
delta=-8.0
Código
ui.stat("Errors", "37", delta=-8.0, width=190)
Cifra: trend=[...]Cifra: trend=[...]
trend=[...]
Código
ui.stat("Revenue", "$9.4k", delta=4.2, trend=[3, 5, 4, 6, 8, 7, 9], width=190)

Con inverse=True una bajada es una buena noticia (verde), para errores o latencia.

Cifra: icon=, inverse=TrueCifra: icon=, inverse=True
icon=, inverse=True
Código
ui.stat("Errors", "12", delta=-8.0, inverse=True, icon="bug", width=180)
Cifra: on_press=Cifra: on_press=
on_press=
Código
ui.stat("Users", "1,204", delta=4.2, icon="users", on_press=on_press, width=180)

Cifra tiene 1 evento propios, en la tabla de abajo. Como todo widget, también tiene los 18 eventos comunes (click, double_click, right_click, mouse_enter, drag, key_down, resize…), que se conectan con .on(...): mira Eventos y Eventos de cada componente.

Evento El handler recibe Cuándo
on_press () Hace pulsable la tarjeta.

El handler recibe es lo que Pyzed le pasa a tu función: () es nada. Cualquier handler también puede ser un mensaje (un valor que no se puede llamar), que va a update().

Los mismos eventos escritos de tres formas. Imperativa: métodos de la app que cambian self. Declarativa: los handlers producen mensajes y un único update() decide. Funcional: una función pura dibuja un estado inmutable y pide cambios con set_state(...). Mira Imperativo, declarativo y funcional.

class Dashboard(pz.App):
def __init__(self):
self.detail = None
def view(self):
return pz.column([
pz.row([ui.stat("Users", "1,284", delta=12.5, width=200,
on_press=lambda: setattr(self, "detail", "Users")), # the whole card
ui.stat("Errors", "37", delta=-8.0, width=200,
on_press=lambda: setattr(self, "detail", "Errors"))], spacing=12),
ui.muted(f"Details of {self.detail}" if self.detail else "Click a number"),
], spacing=8)
stat(
title,
value,
*,
delta=None,
trend=None,
width=None,
icon=None,
inverse=False,
on_press=None,
theme=None,
)

Un número de panel: título, valor grande, variación opcional (+4.2%) y sparkline.

Propiedad Por defecto Descripción
title obligatorio Título.
value obligatorio Valor actual.
delta None Variación en %; verde si es positiva, roja si no.
trend None Valores para la sparkline.
width None Ancho: píxeles, "fill", "shrink" o "fill:N" (proporción).
icon None Icono antes del título.
inverse False Pinta de verde una bajada y de rojo una subida (errores, latencia…).
theme None Tema a usar en lugar del actual (pyzed.theme.current()).

Eventos: on_press (eventos).

Referencia completa →