Vista previa#
OHLC con mechas y cuerpos. Demo completa con datos realistas, renderizada en el servidor. Más abajo están las configuraciones, una por una.
Ejemplos#
Todas las configuraciones del componente, cada una viva y con datos propios. Cambia entre Preview y Code en cada tarjeta y copia lo que necesites.
Uso#
Ejemplo mínimo con las props requeridas. Copia, pega y cambia los datos:
import { CandlestickChart, ChartTooltipPortal } from "@carlos-burelo/klin";
import "@carlos-burelo/klin/styles.css";
<ChartTooltipPortal>
<CandlestickChart
data={/* … */}
labelKey={/* … */}
openKey={/* … */}
highKey={/* … */}
lowKey={/* … */}
closeKey={/* … */}
ariaLabel="Candlestick Chart"
/>
</ChartTooltipPortal>La gráfica es función pura de props a SVG: el HTML llega renderizado y sin JS se ve completa.
Envuelve en ChartTooltipPortal solo si quieres tooltip rico; sin JS queda \<title\> nativo.
Lee la guía /docs/ssr-first una vez y listo.
Código de esta demo#
Ver fuente (src/demos/candlestick-chart.tsx)
/**
* Demo Velas OHLC del site (no se publica en el bundle de la lib).
*/
import { CandlestickChart, ChartTooltipPortal } from "@carlos-burelo/klin";
export default function CandlestickChartDemo() {
return (
<ChartTooltipPortal>
<CandlestickChart
ariaLabel="Velas semanales de América Móvil en la BMV de enero a febrero, con cierre al alza en 17.45 pesos"
data={[
{
semana: "6 ene",
apertura: 16.8,
maximo: 17.05,
minimo: 16.6,
cierre: 16.95,
},
{
semana: "13 ene",
apertura: 16.95,
maximo: 17.2,
minimo: 16.75,
cierre: 17.1,
},
{
semana: "20 ene",
apertura: 17.1,
maximo: 17.25,
minimo: 16.8,
cierre: 16.85,
},
{
semana: "27 ene",
apertura: 16.85,
maximo: 17.0,
minimo: 16.5,
cierre: 16.6,
},
{
semana: "3 feb",
apertura: 16.6,
maximo: 16.95,
minimo: 16.45,
cierre: 16.9,
},
{
semana: "10 feb",
apertura: 16.9,
maximo: 17.55,
minimo: 16.85,
cierre: 17.45,
},
]}
labelKey="semana"
openKey="apertura"
highKey="maximo"
lowKey="minimo"
closeKey="cierre"
formatY={(v: number) =>
new Intl.NumberFormat("es-MX", {
style: "currency",
currency: "MXN",
}).format(v)
}
/>
</ChartTooltipPortal>
);
}Props#
23 props · 7 requeridas
Tipo completo: CandlestickChartProps en candlestick-chart.tsx.
Accesibilidad#
- Toda gráfica exige
ariaLabeldescriptivo; el SVG usarole="img"con\<title\>. - Cada forma lleva
\<title\>nativo (tooltip sin JS) ydata-chart-tippara el portal rico. - Sin datos se renderiza estado vacío homogéneo (
ChartEmpty), nunca SVG roto. - Detalle del contrato en /docs/accesibilidad.
Recursos#
- Fuente del componente:
candlestick-chart.tsx - Guías: SSR-first · Tema · Tooltip