2012-03-15 7 views
6

Estoy tratando de organizar mis nodos en la forma de un árbol. Por ahora, estoy trabajando fuera de este ejemplo desde here. Actualmente, estoy confiando en un diseño dirigido por fuerza, pero estoy tratando de modificarlo de modo que pueda obtener un árbol con un número predeterminado de niveles, es decir, si un nodo pertenece a una "Capa" particular, debería pertenecer a la misma área que otros nodos en la capa.¿Cómo puedo construir un árbol usando d3 y su diseño de fuerza?

He tratado de explicar más en la imagen a continuación, pero ¿alguien tiene alguna sugerencia para esto? ¿Hay algún algoritmo predeterminado dentro de d3 que haga esto o que pueda modificarse para lograr esto?

enter image description here

+0

La fuente contiene un ejemplo para un árbol dinámico. Deberías echarle un vistazo, podría ser lo que quieras (al menos parece similar). * editar: * Quiero decir [este ejemplo] (https://github.com/mbostock/d3/blob/master/examples/tree/tree-dynamic.html). –

+1

¿Hay algún motivo por el que utilice un diseño dirigido por fuerza aquí en lugar de un diseño de árbol estático, p. Ej. http://bl.ocks.org/1061834? – nrabinowitz

+0

@nrabinowitz: +1 Gracias. No puedo creer que me lo perdí! ¡Supongo que ambos servirán a mi propósito! ¿Hay alguna manera de hacer que sean interactivos para que los nodos vuelvan cuando los arrastro a algún lado? Esto ayuda a arrastrar un nodo y explicárselo a alguien. – Legend

Respuesta

10

Su diagrama se ve casi idéntico al this example que utiliza una fuerza de gravedad personalizado basado en la profundidad. Hay another example usando una fuerza personalizada que atrae al nodo padre. Estos son ambos de my talk en diseños de fuerza.

Por supuesto, los diseños de fuerza son solo una opción, y como @nrabinowitz dijo que hay muchos más hierarchy layouts. Puede encontrar moreinteractivehierarchyexamples en mi conversación abierta de SVG.

+1

¡Eres realmente una leyenda! Muchas gracias por tomarse el tiempo para mostrarme todos los ejemplos. Y, por cierto, una charla muy informativa. – Legend

Cuestiones relacionadas