Principe de la visualisation
Le projet présenté sur bigwhalehunting.com représente chaque société du S&P 500 par une bulle dont l’aire reflète la capitalisation boursière à une date donnée. Les bulles sont regroupées selon le secteur d’activité, ce qui crée un agencement visuel similaire à une carte topographique du marché. À l’intérieur de chaque bulle, une silhouette de stick figure indique le nombre d’employés, offrant ainsi une double métrique : valeur financière et effectif humain.
Mécanique de mise à l’échelle et agrégation
Pour garantir que l’aire d’une bulle soit proportionnelle à la capitalisation, l’implémentation utilise généralement une fonction d’échelle racine carrée (scaleSqrt) afin de convertir la valeur monétaire en rayon. Cette approche évite la distorsion visuelle que provoquerait une mise à l’échelle linéaire du rayon. Un extrait typique de code D3.js apparaît ci‑dessous :
const radius = d3.scaleSqrt()
.domain([0, d3.max(data, d => d.marketCap)])
.range([0, maxRadius]);
svg.selectAll('circle')
.data(data)
.enter()
.append('circle')
.attr('r', d => radius(d.marketCap));
Les bulles sont ensuite positionnées par un layout de force qui applique une répulsion entre elles tout en maintenant les contraintes sectorielles. Cette contrainte se traduit par des forces d’attraction supplémentaires vers des points d’ancrage définis par secteur, ce qui crée des clusters visuellement distincts.
Analyse des limites et perspectives
Le choix d’afficher les effectifs sous forme d’une simple figure ne rend pas compte de la répartition interne (par exemple, la proportion de cadres vs ouvriers). De plus, la visualisation ne précise pas la date exacte de la capitalisation, ce qui rend difficile la comparaison temporelle. L’agrégation par secteur masque les variations intra‑sectorielles, notamment les différences de capitalisation entre les géants et les petites capitalisations d’un même secteur.
Sur le plan perceptuel, l’humain juge plus facilement le diamètre que l’aire, ce qui peut conduire à une sous‑estimation des écarts de capitalisation. Une alternative consisterait à afficher le rayon en fonction du logarithme de la capitalisation, réduisant ainsi l’écart visuel tout en conservant la hiérarchie.
Enfin, l’absence de filtres interactifs limite l’exploration des données. L’intégration d’outils de zoom, de survol dynamique ou de sélection par secteur permettrait d’exploiter pleinement le jeu de données et d’atténuer les biais de lecture liés à la densité des bulles dans les secteurs les plus capitalisés.