Gráficos de D3.js en Svelte
Renderice visualizaciones de D3 dentro de componentes Svelte mediante enlaces reactivos y actions.
Gráficos de D3.js en Svelte es una lección gratuita de Sveltejs Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Sveltejs Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Sveltejs Academy incluye 4 lecciones en total.
Por qué usar D3 con Svelte
D3 es un referente en la visualización de datos; la reactividad de Svelte hace que usarlo sea más fácil que nunca.
Enfoque
Deje que Svelte renderice el SVG y use D3 para las escalas, las distribuciones y las funciones auxiliares.
Instalación
Añada D3 o submódulos específicos, como d3-scale y d3-shape.
npm install d3Escalas
Use las escalas de D3 para asignar datos a píxeles.
import { scaleLinear } from "d3-scale";
const x = scaleLinear().domain([0, 100]).range([0, width]);Renderizar barras de forma reactiva
Use {#each} para renderizar elementos controlados por datos.
{#each data as d}
<rect x={x(d.x)} y={y(d.y)} width="10" height={height - y(d.y)} fill="steelblue" />
{/each}Evitar d3-selection
Deje que Svelte gestione el DOM; recurra a d3-selection solo para transiciones complejas.
Ejes
Renderice los ejes asignando marcas con {#each} y sus escalas.
Información sobre herramientas
Añada un estado de interacción al pasar el ratón con mouseenter/mouseleave en cada forma y muestre una descripción emergente posicionada.
Adaptabilidad
Supervise el ancho del contenedor con ResizeObserver y reajuste la escala cuando cambie.
Animaciones
Use las transiciones de Svelte en las formas SVG o interpole los rangos de las escalas con los stores de movimiento.
Biblioteca de componentes
LayerCake es una biblioteca de gráficos específica de Svelte creada en torno a este patrón.
Comprobación rápida
¿Qué parte de D3 resulta más útil en Svelte?
Resumen
Use D3 para las operaciones matemáticas, como escalas y distribuciones, y Svelte para renderizar SVG. Evite d3-selection en la medida de lo posible para lograr una integración limpia.
Aprende HTML con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 41
- Lecciones
- 163
Preguntas frecuentes
¿La lección «Gráficos de D3.js en Svelte» es gratis?
Sí — el texto completo de «Gráficos de D3.js en Svelte» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Sveltejs Academy, actualiza a CoddyKit PRO. El curso de Sveltejs Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Gráficos de D3.js en Svelte»?
Renderice visualizaciones de D3 dentro de componentes Svelte mediante enlaces reactivos y actions. Practicas Sveltejs Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Sveltejs Academy?
No se requiere experiencia previa. Sveltejs Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Gráficos de D3.js en Svelte»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Sveltejs Academy?
Sí. Cada lección de Sveltejs Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Uso de Tailwind CSS con SvelteKit
- Gráficos de D3.js en Svelte
- Mapas de Leaflet con actions de Svelte
- Editores de texto enriquecido: Tiptap