Charts & Data Viz
D3.js, Apache ECharts, Gradio, Redash, Excalidraw, tldraw — rendez n'importe quelle donnée, du graphe unique au dashboard complet.
Ce que contient ce pack
Ce pack rassemble les six outils de visualisation qui gèrent toutes les formes d'affichage de données rencontrées dans une vraie équipe produit. Deux sont des libs de graphes JS ; une est un builder de démo ML Python ; une est un dashboard SQL ; deux sont des apps de tableau blanc que les ingénieurs ouvrent vraiment.
| # | Outil | Sortie | Idéal pour |
|---|---|---|---|
| 1 | D3.js | SVG, sur mesure | viz explicative custom |
| 2 | Apache ECharts | Canvas + SVG | dashboards haute perf |
| 3 | Gradio | démo ML hébergée | démos modèle avec sliders |
| 4 | Redash | dashboard SQL | dashboards exec / analyste |
| 5 | Excalidraw | diagrammes dessinés main | croquis d'architecture |
| 6 | tldraw | tableau blanc + IA | brainstorming en direct |
Les six se divisent proprement en trois paires : D3 + ECharts (graphes programmatiques), Gradio + Redash (UIs complets autour des données) et Excalidraw + tldraw (pensée visuelle, pas strictement viz mais assez adjacent pour que les ingénieurs utilisent le même raccourci).
Pourquoi un pack couvre les six
Un ingénieur frontend à qui on demande « fais un graphe » doit en réalité répondre : est-ce une illustration unique dans une page de docs, un panneau de dashboard qui rafraîchit chaque minute, une démo modèle pour un stakeholder, une slide exec, ou un croquis whiteboard de réunion ? Ces six sont la réponse canonique à chaque version de cette question.
- D3.js quand il faut un contrôle total de chaque pixel — c'est une lib bas niveau, pas une lib de graphes. Marche bien avec Observable Plot pour le cas 80%.
- Apache ECharts quand il faut 50 types de graphes qui marchent out-of-the-box sur Canvas. Bat Recharts sur les gros datasets, maintenu par Apache.
- Gradio quand vous avez un modèle Python et voulez une URL de démo partageable en 10 lignes. Hugging Face Spaces l'utilise par défaut.
- Redash quand vous avez une base et qu'il faut des analystes qui font du point-and-click vers des dashboards partagés. Alternative auto-hébergée à Mode ou Looker.
- Excalidraw quand vous voulez un diagramme dessiné main (architecture, séquence) qui n'a pas l'air d'avoir pris trois heures.
- tldraw quand vous voulez du tableau blanc collaboratif plus un side-kick IA — l'intégration tldraw_compute vous laisse esquisser des flux que l'IA rend.
Installer en une commande
# Installe le pack — pose des templates starter pour chaque outil viz
tokrepo install pack/charts-data-viz
# Ou en choisir un
tokrepo install d3
tokrepo install echarts
tokrepo install gradio
tokrepo install redash
Le TokRepo CLI scaffold les libs JS via npm/pnpm et les Python via uv. Pour Redash, l'installation pose un docker-compose.yml pour faire docker compose up et avoir une instance fonctionnelle en 60 secondes.
Pièges courants
- D3 n'est pas une lib de graphes. C'est une lib maths + DOM. Les gens copient un snippet stackoverflow, tapent un cas limite, et abandonnent. Pour « lib de graphes au-dessus de D3 », utilisez Observable Plot ou Vega-Lite. Allez sur D3 brut seulement quand ces deux n'expriment pas votre viz.
- ECharts peut taper des limites mémoire sur gros volumes. Un line chart à 500K points rend, mais rendre 500K animations non. Désactivez les animations et sous-échantillonnez à ≤10K points avant rendu.
- Le share=True de Gradio expose votre modèle. Il génère une URL publique *.gradio.live que n'importe qui peut atteindre tant que votre process tourne. OK pour envoyer une démo à un collègue ; pas OK pour laisser tourner toute la nuit sans auth sur un modèle fine-tuné avec des poids propriétaires.
- Redash demande de l'attention sur les limites de lignes. Les requêtes par défaut peuvent renvoyer des millions de lignes et crasher le browser. Configurez
query_runner_row_limitet utilisez des requêtes échantillonnées pour l'exploration. - Excalidraw vous enferme dans le format Excalidraw. Oui ça exporte PNG/SVG, mais le fichier
.excalidrawest du JSON propriétaire. Planifiez « on redessinera si on migre » — ou utilisez tldraw qui exporte du SVG plain.
Quand ce pack seul ne suffit pas
Si vous avez besoin de viz statistique pixel-perfect (territoire matplotlib/seaborn/plotly) ce pack ne couvre pas — c'est côté Python et sert un autre public (notebooks, papers). Si vous avez besoin d'un vrai outil BI avec audit trails et SSO, Redash est le tier d'entrée ; Metabase ou Apache Superset est l'étape suivante.
Pour les sources de données, associez avec Postgres pour Agents IA. Pour embarquer les résultats dans un site de docs, associez avec Générateurs Sites Statiques & Docs. Pour « fais une app complète avec ces graphes comme panneaux », voir Builders d'Apps IA.
6 ressources prêtes à installer
Questions fréquentes
Ces outils sont-ils gratuits ?
Les six sont open-source. D3, ECharts, Excalidraw et tldraw sont MIT/Apache. Gradio est Apache 2.0 (Hugging Face l'héberge gratuit dans Spaces ; auto-hébergement aussi gratuit). Redash est BSD-3 — entièrement gratuit auto-hébergé, avec un plan hébergé payant optionnel si vous ne voulez pas le faire tourner. Pas de frais par graphe ou par utilisateur des libs.
Comment ECharts se compare à Recharts ou Chart.js ?
ECharts utilise Canvas + WebGL par défaut, scale à 100K+ points sans accroc. Recharts est React-only et SVG-only — joli pour 1K points, lent à 50K. Chart.js est l'installation la plus simple pour un graphe mais manque l'écosystème de plugins ECharts (cartes geo, jauges, treemaps). ECharts pour dashboards, Recharts pour graphes React ponctuels, Chart.js pour une page HTML rapide.
Est-ce que ça fonctionne avec Claude Code ou Cursor ?
Les six s'installent en une commande npm/pip et ont des types TypeScript complets ou stubs, donc tout éditeur IA les gère bien. Claude Code et Cursor ont une conscience spécifique des shapes d'API D3 et ECharts. Pour Gradio, les type hints Python sont excellents — Cursor autocomplète les composants interface correctement. tldraw a un serveur MCP maintenu pour le sketching IA-driven.
Différence vs outils dashboard généraux comme Grafana ?
Grafana est metrics-and-time-series-first — Prometheus, Loki, InfluxDB sont ses sources natives. Redash est SQL-first — n'importe quel DB driver fonctionne. ECharts est une lib, pas un outil — vous l'embarquez dans votre propre UI. Grafana pour dashboards ops, Redash pour dashboards analyste, ECharts quand il faut des graphes dans une app que vous construisez vous-même.
Quel est le piège opérationnel avec Gradio ?
L'auto-reload est super en dev mais expose vos paths de fichier dans les pages d'erreur sur l'URL publique *.gradio.live. Définissez share=False pour tout environnement touchant aux vraies données, ou faites tourner derrière un reverse proxy avec auth. Aussi : Gradio met les requêtes en queue par défaut — sous charge ça sérialise l'inférence, comportement correct mais qui surprend les utilisateurs néophytes.
12 packs · 80+ ressources sélectionnées
Découvrez tous les packs curatés sur la page d'accueil
Retour à tous les packs