Voici un graphique de p. 202 du Dataclysm de Christian Rudder , bien qu'il ait été fait par James Dowdell. Il illustre les relations entre les 200 principaux sous-mariages, qui sont des domaines d'intérêt sur reddit.com où les utilisateurs peuvent soumettre des liens, des commentaires et des votes. Ils sont similaires aux balises de ce site. La taille des régions subreddit représente leur popularité. Les subreddits sont regroupés par des commentaires croisés, et la teinte plus foncée représente le pourcentage de personnes qui restent dans ce subreddit et ne publient pas à d'autres.
S'agit-il simplement d'un partitionnement Voronoi standard, avec une certaine coloration pour l'insularité, ou est-ce quelque chose de plus impliqué?
Comment peut-on s'y prendre pour en faire un?
la source
Réponses:
Tout d'abord, je suis James Dowdell, donc je suis plutôt qualifié pour répondre (créé un compte pour répondre, peut confirmer l'identité si quelqu'un est inquiet).
La réponse simple est en effet ce que d'autres ont supposé: il s'agit d'un http://en.wikipedia.org/wiki/Voronoi_diagram . Nous avons utilisé le même concept à la page 194, où les sites voronoi sont les paires de longitude latitude répertoriées par craigslist.org.
Malheureusement, cette connaissance elle-même n'est en fait pas très utile. Avec le graphique Craigslist, il est clair quelles valeurs utiliser pour les sites. Mais quel tour de magie Dataclysm a-t-il utilisé pour attribuer des coordonnées x / y dans ce graphique?
La réponse à cette question est beaucoup plus complexe que la plupart des gens ne le pensent, et je ne peux pas dire que je recommande de refaire ce que nous avons fait. Je parie que quelqu'un d'autre ici pourrait recommander une approche qui obtient plus ou moins le même résultat et qui est beaucoup plus simple.
La vérité est:
Christian et moi avons fait des va-et-vient pendant plus de 3 mois pour créer des graphiques pour ce chapitre, que nous ne pourrions jamais faire fonctionner. Mais, les résultats d'une approche ont souvent alimenté la suivante.
La chose la plus critique implique malheureusement une technique et certains actifs d'image que je ne suis pas libre d'explorer ou de partager de manière significative, car nous pouvons encore les utiliser d'une manière ou d'une autre. Ce que je vais dire, c'est que nous avons pris un http://en.wikipedia.org/wiki/Graph_theory#Graph compliqué que nous avons compilé avec la permission des données de Reddit, impliquant des userids et des subreddits, et nous avons joué avec ce graphique et divers dérivés à l'intérieur de http://gephi.github.io/(Je suis particulièrement fan de "OpenOrd" ces jours-ci). En fait, nous avons obtenu une image magnifique - aurait été le point culminant du livre s'il avait été publié - mais même si cela aurait bien fonctionné sur un site Web, il ne s'imprimait pas bien dans un livre - pas assez de place ou de résolution. Christian envisageait à l'origine de le définir comme un dépliant dans le livre, mais ce n'était tout simplement pas rentable pour Crown.
Cependant, à ce stade, nous avions une image qui avait des coordonnées x / y pour les sous-redits et ils étaient au moins relativement bien organisés dans l'espace x / y. Nous étions également pressés car le délai de publication approchait. Je suis un programmeur d'abord et un gars de données ensuite, donc pour tenir compte des limites extrêmement serrées de la page dans le livre et du temps restant sur l'horloge, mon instinct était d'écrire un programme dans Box2D qui simulait les limites de la page comme murs, mettre une version extrêmement rétrécie du graphique à l'intérieur et simuler la croissance de ces nœuds (pas naturel pour Box2D d'ailleurs, il s'attend à des corps rigides qui ne changent pas) jusqu'à ce que tout soit aligné contre les murs et entre eux. Les nœuds ont augmenté à un rythme proportionnel à la taille du sous-crédit qu'ils représentaient, ce qui signifie que les tailles finales seraient également proportionnelles de la même manière.capture d'écran du programme box2d en cours d'exécution
Le résultat de cela n'était pas très joli du tout, mais cela m'a donné quelque chose de très précieux: les sites voronoi. J'ai pris les centroïdes des polygones box2d résultants, les ai soumis à un processus standard, et c'est ce qui a été utilisé pour le graphique dans le livre. Les étiquettes de texte ont été appliquées à la main dans Photoshop, je crois.
Par ailleurs, la coloration des cellules était liée à une statistique que nous avions développée pour former le graphique en (A)
la source
Il ressemble plus à un problème de nuage de mots avec une apparence de polygone Voronoi. Vous devez utiliser le mot fréquence pour décider de l'emplacement (haute fréquence signifie centre). Tant que l'emplacement des mots est déterminé, dessiner le polygone de Voronoi ne devrait pas être un gros problème.
la source