đ Carte de vĆux en 3D : comment nous lâavons créée avec lâaide dâune IA

Chaque annĂ©e, la carte de vĆux suscite dans lâĂ©quipe de WeDoData dâĂ©normes discussions âconceptuellesâ car elle nous confronte Ă une coutume, une sorte de passage obligĂ© et visiblement, nous nâaimons pas les choses rĂ©pĂ©titives đ Alors nous lâavons transformĂ© en espace de crĂ©ation et de R&D.
Ă lâimage de lâanniversaire de cette newsletter pour lequel nous avions créé le premier mot mĂȘlĂ© de la dataviz, nous avons mis sur la table les mots-clĂ©s et les envies qui nous animent en ce moment :
1ïžâŁÂ Les bonnes rĂ©solutions : pourquoi ne pas crĂ©er une dataviz sur celles de nos lecteurs (oui, vous !) ?
2ïžâŁÂ Les visualisations 3D : nous voulons mieux les maĂźtriser pour les utiliser quand câest pertinent (vous vous souvenez cette Ă©dition spĂ©ciale 3D ?)
3ïžâŁÂ LâIA : elle sâinstalle dans nos process data, alors tentons de produire quelque chose de wahou !
4ïžâŁ La pĂ©rennitĂ© : imaginons des dataviz utilisables Ă plein dâoccasions et donc que lâon peut mettre Ă jour
Fort·e·s de ces âcontraintesâ, nous nous sommes mis en tĂȘte de rĂ©colter des informations sur VOUS et votre rapport aux bonnes rĂ©solutions (1.â ) pour les mettre en dataviz 3D sur le logiciel de modĂ©lisation Blender (2.â ). Et comme aucun·e dâentre nous nâest totalement expert·e en Blender, pourquoi ne pas utiliser un MCP pour crĂ©er les visualisations uniquement via des prompts Ă Claude (3.â ) ? Avec une obsession : comment connecter ces donnĂ©es directement Ă la dataviz 3D pour ne pas tout refaire Ă chaque fois quâelles changent (4. â ) ? Merci les plugins.
Voici notre retour dâexpĂ©rience, entre tutoriel et coulisses.

Communiquer avec Blender via une IA : merci le MCP ! Il y a quelques mois, notre veille IA nous a amenĂ© Ă nous intĂ©resser aux objets particuliers que sont les MCP - comprenez Model Context Protocol - une norme ouverte conçue par Anthropic pour permettre aux LLMs dâinteragir avec le monde extĂ©rieur, en particuliers nos logiciels prĂ©fĂ©rĂ©s. Depuis ont fleuri des MCP pour Figma, Notion, Data.gouv ou encore⊠Blender. Blender Ă©tant basĂ© sur du code Python, et Claude trĂšs performant pour coder en Python, lâassociation semble prometteuse. Banco !
Lâinstallation dâun MCP est relativement simple : il suffit de copier-coller quelques lignes de code correspondant Ă l'outil que lâon souhaite ajouter dans le fichier de configuration claude_desktop_config.json depuis les rĂ©glages de lâapplication Claude Desktop, puis de redĂ©marrer l'application pour que Claude puisse l'utiliser. Puis, il faut installer le plugin Blender MCP dans Blender en chargeant un script python. En trois clics, le tour est joué !
Toute la procĂ©dure dâinstallation est dĂ©taillĂ©e sur la page GitHub du MCP Blender.

Tenir les rĂȘnes de Claude. Mener un processus Ă lâaide de Claude nâest pas tĂąche aisĂ©e : le LLM a tendance Ă prendre beaucoup dâinitiatives, interprĂ©ter les demandes et sâempĂȘtrer dans des boucles de crĂ©ation-modification gourmandes en temps⊠et en crĂ©dits đ€. Nous avons donc appris Ă bien tenir les rĂȘnes de la bĂȘte et la guider pas Ă pas. Ainsi, lors de la crĂ©ation de nos datavisualisations, nous avons Ă©tĂ© trĂšs directif, donnant des consignes claires, demandant explicitement Ă Claude de ne pas partir bille en tĂȘte et dâexpliciter ce quâil compte faire avant de passer Ă lâaction.
đšIci, nous nâattendons pas de Claude quâil propose des dataviz en fonction des donnĂ©es fournies. Nous avons imaginĂ© en amont les types de visualisations que nous souhaitions (câest notre mĂ©tier ;) et nous connaissons leurs spĂ©cificitĂ©s de rĂ©alisation. Nous nous appuyons sur Claude âjusteâ pour interagir avec Blender et obtenir ces rendus 3D.

CrĂ©er un barchart en 3D, Ă©tape par Ă©tape. Pour nous roder Ă lâexercice, nous avons commencĂ© avec un graphique simple : un barchart en 3D. Voici les Ă©tapes que nous avons suivies avec Claude :
1/ Expliquer le contexte : nous souhaitons construire un graphique, ce qui implique des donnĂ©es fournies sous la forme dâun CSV.
2/ Expliciter ce Ă quoi vont correspondre les donnĂ©es : chaque ligne correspond Ă une barre, la colonne âvalueâ contient lâinformation sur la hauteur de la barre, la colonne âcategoryâ les labels Ă afficher prĂšs des barres.
3/ Construire le graphique pas Ă pas :
- Ătape 1 : crĂ©er les 5 barres, extrusions rectangulaires selon lâaxe Z, dâune hauteur en accord avec les donnĂ©es.

- Ătape 2 : ajouter des labels, positionnĂ©s Ă plat sur lâaxe XY, Ă cĂŽtĂ© de chacune des barres. On lui dĂ©finit la distance Ă respecter, lâangle dâinclinaison, la taille et la couleur de typoâŠ

- Ătape 3 : colorer ces barres, en lui fournissant une image de la palette de couleurs de WeDoData.


Nous voilĂ avec un premier rĂ©sultat satisfaisant : nous avons créé notre premiĂšre dataviz 3D avec lâaide de Blender et de Claude ! Mission rĂ©ussie⊠ou presque. Comment faisons-nous si les donnĂ©es Ă©voluent ou si nous voulons crĂ©er le mĂȘme graphique mais avec dâautres donnĂ©es ? Comment ajuster facilement la hauteur, la largeur, lâespacement etc ? On recommence tout Ă chaque fois ?
Brancher le graphique 3D sur les data : merci le plugin ! Blender fonctionne avec des plugins, plugins que nous pouvons crĂ©er nous-mĂȘmes ou plutĂŽt que nous pouvons demander Ă Claude de crĂ©er pour nous đ Câest finalement assez simple de passer dâune visualisation 3D qui nous convient au plugin et câest tout lâintĂ©rĂȘt dâavoir bien cadrĂ© et validĂ© le design de notre graphique en amont. Lâobjectif est de garder la mĂ©thodologie de crĂ©ation du graphique, mais de faciliter la mise Ă jour des donnĂ©es et les ajustements Ă la marge.
- Permettre de charger un fichier CSV contenant les données dans le format standardisé décidé précédemment
- Variabiliser autant de paramĂštres que possible : pour les barres, la hauteur maximum, largeur et espacement, couleurs⊠et pour les labels : affichage ou non, taille de police, espacement par rapport aux barresâŠ
- Rendre possible lâaffichage ou non du graphique, ainsi que de le supprimer
Un prompt Ă Claude pour lui demander de nous crĂ©er un plug in et le tour est jouĂ© ! Nous voilĂ avec un fichier Python que lâon peut alors installer comme plugin et qui nous permet de gĂ©nĂ©rer des graphiques 3D Ă la volĂ©e.
đ Cadeau : nous vous donnons notre petit plugin pour crĂ©er un barchart 3D et un fichier CSV test.
Obtenir de multiples graphiques 3D. Nous avons répété ce procédé pour les différents types de graphiques que vous voyez ici : ils sont tous basés sur les données récoltées via le questionnaire partagé dans la derniÚre édition de la newsletter.
Pour le rendu final, nous avons juste ajoutĂ© quelques lumiĂšres, créé une animation permettant un mouvement de camĂ©ra (avec lâaide de lâIA, mais Ă©galement un peu de retouches Ă la main), et voilĂ le travail !
â ïžÂ Lâutilisation de lâIA et son lot de (mauvaises) surprises. Utiliser lâIA pour gĂ©nĂ©rer ce genre de visuels nâest pas une promenade de santĂ©. Nous avons dĂ» batailler pas mal de fois : petit florilĂšge des limites de cette approche.
- Consommation de crĂ©dits : mĂȘme on demande Ă Claude dâĂ©crire uniquement du code Python, il sâavĂšre gourmand en crĂ©dits, nous poussant dans notre limite quotidienne Ă force dâessais infructueux. Compte Pro obligatoire donc.
- Longueur du processus : pour faire un barchart tout simple, Claude se débrouille trÚs bien. Mais expliquer des graphiques plus complexes demande du temps, des ajustements successifs, et au final, le temps passé à prompter, corriger, ajuster est important.
- Gestion des conflits dans lâespace : quand on a une donnĂ©e variable, dont on ne connait pas Ă lâavance lâagencement dans lâespace - notamment des labels qui se superposent -, il nâest pas simple de crĂ©er une logique de placement automatique des labels via du code. Claude galĂšre, et on se retrouve au final avec des Ă©tiquettes quâon finit par positionner Ă la main.
POUR ALLER ENCORE PLUS LOIN
- Nael Shiab fait des expérimentations également de dataviz avec Blender
- Une vidĂ©o qui dĂ©taille lâIA pour Blender : https://www.youtube.com/watch?v=0PSOCFHBAfw
- Quezako les MCP ? https://github.com/modelcontextprotocol
- Quelques MCP qui nous ont tapĂ© dans lâoeil : QGis, data.gouv et Notion.