Comment puis-je afficher les mariages dans un d3.js basé à la famille arbre"?
Je suis un HTML/CSS, développeur, la recherche de javascript solutions pour la construction d'un "arbre généalogique" qui besoins pour montrer les mariages (en dehors de la famille, bien sûr) d'une manière significative.
Essentiellement, je suis à la recherche en se basant sur un dendrogramme basé sur d3.js, par exemple,http://bl.ocks.org/4063570, mais j'ai eu du mal à trouver quelque chose qui exprime "mariages".
Ci-dessous est une image des données, je vais être en se basant sur:
Toute aide /suggestions /liens serait bien apprécié! Je ne sais pas si c'est encore possible, mais aimerait utiliser d3.js comme il a l'air tellement bien fait, et apparemment polyvalent.
- d'un côté vous avez les gens, qui peuvent être représentés comme des nœuds dans le graphe (boîtes). ensuite, vous avez les lignes de connexion; je suis en supposant qu'il en existe différents types, de sorte que vous pouvez les ajouter avec leurs propres classes. pour mettre en œuvre que vous avez besoin pour utiliser svg:éléments de chemin d'accès. le seul obstacle que je vois est que vous devez écrire votre propre algorithme de mise en page.
- Avez-vous jamais arriver à une bonne solution? Je cherche à faire la même chose.
- Réponse courte: – non!
- Aussi la recherche comme un fou pour trouver une solution à ce...
Vous devez vous connecter pour publier un commentaire.
Il y a quelques options, mais je crois que chacun d'entre eux requiert un peu de travail. Il serait utile si il y avait un seul et unique standard pour la représentation d'un arbre de la famille en JSON. J'ai récemment remarqué que geni.com a un assez en profondeur de l'API pour cela. Peut-être de codage par rapport à leur API serait une bonne idée pour la réutilisabilité...
-- Généalogie arbre --
Le Pedigree De L'Arbre pourrait être suffisant pour vos besoins. Tu ferais de la loi de réticulable, où si vous avez cliqué sur son nom le graphique de redessiner ainsi, vous pouvez voir leur lignée.
-- Support De Mise En Page De L'Arbre --
Similaire à la Généalogie Arbre, mais bidirectionnelles, Support De Présentation De L'Arbre vous permet de gérer un "ici sont mes parents, grands-parents, enfants, petits-enfants" type de vue. Comme le Pedigree de l'Arbre, tu ferais individus liés à re-centrer le support sur ce nœud.
-- Force-Mise En Page --
Il est intéressant de force basés sur des mises en page qui semblent prometteuses. Jetez un oeil à cet exemple d'une force de mise en page avec des étiquettes intelligentes. Un ajustement de l'algorithme de la façon dont la "force" est déterminée pourrait faire cela dans un très bel arbre, avec les générations plus âgées au-dessus ou au-dessous de nouveaux.
-- Cluster Dendogram (pourquoi il ne parvient pas) --
L'd3.js les mises en page que j'ai vu qui se prêteraient le mieux pour la famille des arbres de supposer un seul nœud est le parent, alors vous avez besoin pour représenter les parents de la combinaison de (visuellement un "T" entre) deux nœuds: un nœud qui est un membre de votre arbre, et flottante un nœud qui représente la loi. Le réglage d'un cluster dendogram pour ce faire, il devrait être possible, mais pas sans modification significative.
Si vous-ou quelqu'un d'autre, d'ailleurs-s'attaquer à cela, laissez-moi savoir. J'aimerais bien les voir (et au profit de) le travail et peut-être en mesure d'y contribuer, si possible.
J'ai aussi besoin de tirer les pedigrees avec D3 donc j'ai compris comment. J'ai créé exemples qui montrent les fonctionnalités de base et ensuite ajouter des fonctionnalités avancées telles que l'expansion et montrant descendants.
Je ne sais pas comment vous souhaitez afficher les mariages. Les mariages sont inhérentes à un ancestrales pedigree, mais pas dans un descendancy graphique. Le code pourrait être adapté afin de montrer les conjoints dans les nœuds descendants.
Voici une photo de la façon dont il regarde. Le style peut être modifié comme souhaité.
Ce besoin de quelques travaux, mais essentiellement l'idée que je propose est de faire une force de mise en page avec un type spécial de nœud appelé relation qui ne sont pas dessiner un cercle. Il représente la liaison entre les deux sujets et peut être à l'origine de plus de nœuds.
En d3, vous pouvez étendre à toutes les structures de données pour s'adapter à ce que vous voulez, puis il n'y a plus de travail pour lier les données, mais il est tout personnalisable. Voici un échantillon des structures de données, je voudrais utiliser dans la force de mise en page.
Espère que j'ai expliqué quelque chose sur les possibilités de d3.