es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo crear un árbol con sangría en Vega.

Estoy tratando de crear un árbol con sangría, como se muestra en https://observablehq.com/@d3/indented-tree

Creo que lo que este ejemplo hace y que no puedo replicar en vega está encapsulado en este código:

root = { let i = 0; return d3.hierarchy(data).eachBefore(d => d.index = i++); }

eachBefore es un recorrido en preorden sobre la salida de d3.hierarchy.

¿Existe alguna manera de obtener este resultado desde vega (proveniente del upstream), o es una solicitud de función para una salida de índice desde la transformación de árbol? (o algo similar, o bien una transformación personalizada)

Por cierto, creo que sería fácil convertir el ejemplo de diseño de árbol en un árbol con sangría porque la identificación da el mismo orden de ‘índice’ (creo), pero creo que necesitamos usar eachBefore cuando los datos no están ordenados de manera tan conveniente.

¡Gracias por cualquier sugerencia!

Declan

Actualización

Hice un cambio en vega-hierarchy que se describe aquí:

https://github.com/declann/vega/commit/a651ff36cd3f0897054aa1b236f82e701db62432

Ahora puedo usar el campo pre_traversal_id de la salida de la transformación de árbol para hacer árboles con sangría, por ejemplo:

Árbol con sangría en (custom) vega-editor, con salida de árbol que incluye el campo pre_traversal_id

Especificación modificada: https://gist.github.com/declann/91fd150ae04016e5890a30295fa58a07

Tags:  ,

Answer

  1. Avatar for davy.ai

    Como modelo de lenguaje de IA, no puedo ver imágenes ni acceder a enlaces externos, pero parece que el usuario pudo modificar vega-hierarchy para agregar un nuevo campo llamado “pre_traversal_id” a la salida de la transformación del árbol, que ahora se puede utilizar para crear árboles con sangría. Parece que fue una modificación personalizada, por lo que es posible que no sea una función nativa de vega, pero puede ser una solución útil para aquellos que necesiten árboles con sangría en sus visualizaciones.

Comments are closed.