Todos los componentes (204)
Gráfico de áreas
Datos · AreaChart
Qué es y cuándo usarlo
Lo mismo que LineChart, con el área de debajo de cada línea rellena: la evolución de una o varias series sobre las mismas categorías, con el peso de cada una a la vista. Comparte con LineChart y StackedBarChart los datos, la escala, la leyenda y la tabla.
El dibujo es el adorno y la tabla es el dato: debajo va una tabla de verdad (una fila por categoría, una columna por serie), oculta a la vista salvo con tableVisible. Al pasar el ratón por una categoría salen los valores de todas las series.
Cuándo usarlo
- Un volumen que se acumula en el tiempo: ventas, visitas, horas.
stackedapila las series: el borde de arriba es el total y cada capa, lo que aporta cada una. Al apilar, un hueco (null) cuenta como cero. Sinstackedlas áreas se superponen, translúcidas, y conviene que sean dos o tres; unnulles un hueco y corta el área ahí.- El eje empieza siempre en cero, porque un área que arranca en otro sitio exagera las diferencias;
minymaxfijan la escala a mano, para comparar dos gráficos. formatescribe los valores (euros, porcentajes) en el eje, al pasar el ratón, en el resumen y en la tabla;categoryNamees la cabecera de la primera columna de la tabla.
Cuándo no
- Comparar la forma de varias series sin relleno, o con el eje ajustado a los datos:
LineChart. - Pocas categorías en las que importa el total de cada una:
StackedBarChart. - Partes de un total en un solo momento:
DonutChart.
Teclado: no tiene: no hay nada que pulsar. El dato completo está en la tabla.
Accesibilidad: el dibujo es una imagen (role="img") con un resumen escrito («2 series, 9 puntos. Tienda: de 4200 € a 7800 €, el máximo, 7800 €, en Sep. …») y la tabla está siempre para el lector de pantalla. El color nunca es la única pista: la leyenda (por defecto, solo con más de una serie) y el resumen llevan el nombre de cada serie.
Aspecto fino: variables CSS --amset-series-*: -axis, -cap, -footer, -height, -label y -stroke. El tamaño mueve el alto (10, 14 o 18 rem); height manda si se pasa. El color de cada serie sale de su tone, y el relleno es ese color al 22 %.
Cómo se ve
- Tienda
- Online
- Mayorista
| Mes | Tienda | Online | Mayorista |
|---|---|---|---|
| Jul | 6900 | 5100 | 1900 |
| Ago | 5200 | 5600 | 2400 |
| Sep | 7800 | 6300 | 2800 |
<AreaChart
label="Ventas totales por canal"
categories={['Jul', 'Ago', 'Sep']}
series={canales}
categoryName="Mes"
stacked
tableVisible
/>Props
Se importa con import { AreaChart } from '@amset/ui'. Las obligatorias van marcadas.
| Prop | Tipo | Para qué sirve |
|---|---|---|
categoriesobligatoria | readonly string[] | Lo que va en el eje de abajo: los meses, los dias. Una por valor de cada serie. |
labelobligatoria | string | Que se esta midiendo. Obligatoria: un grafico sin titulo no informa. |
seriesobligatoria | readonly ChartSeries[] | — |
axes | boolean | Rayas de fondo con su numero. |
categoryName | string | Como se llama la primera columna de la tabla. Por defecto, «Periodo». |
className | string | Se une a las clases de la biblioteca, no las sustituye. |
format | (value: number) => string | — |
height | number | Alto del dibujo en pixeles. Por defecto, el del tamaño. |
legend | boolean | La leyenda con el nombre de cada serie. Por defecto, solo si hay mas de una. |
max | number | — |
min | number | Minimo y maximo del eje a mano, para comparar dos graficos con la misma escala. |
size | "sm" | "md" | "lg" | — |
stacked | boolean | Las series se suman unas sobre otras: el area total es la suma. Por defecto, `false` (se superponen). |
tableVisible | boolean | Enseña tambien la tabla. Para el lector de pantalla esta siempre. |
Acepta además los atributos del elemento que pinta: className, style, data-*, aria-* y sus eventos.
En el banco de pruebas
Cada estado y cada variante, para tocarlos de uno en uno, en su ficha de ui.amset.tech:
