Para expertos: características adicionales de FL

Los usuarios expertos pueden utilizar los parámetros siguientes.

Número máximo de movimientos permitidos por iteración (FL)

En cada iteración, el algoritmo de diseño mueve los nodos una distancia relativamente pequeña. Esta distancia no debe ser demasiado grande; de lo contrario, el algoritmo puede que no converja. Tampoco debe ser demasiado pequeña o el número de iteraciones necesarias y el tiempo de ejecución aumentará.
El número máximo de movimientos en cada iteración se controla mediante un parámetro.
Para establecer este parámetro:
Ejemplo de cómo establecer el número máximo de movimientos por iteración
forceDirectedLayout.setMaxAllowedMovePerIteration(3);  
Los valores típicos para este valor están comprendidos entre 1 y 30, pero depende del valor del parámetro PreferredLinksLength. Por ejemplo, si el valor para el parámetro PreferredLinksLength es 1000, entonces un valor de 100 para el parámetro MaxAllowedMovePerIteration todavía tiene sentido.

Peso de la longitud de enlace (FL)

El algoritmo de diseño se basa en el cálculo de las fuerzas de atracción y repulsión entre los nodos y la búsqueda iterativa de una configuración de equilibrio. Una de estas fuerzas está relacionada con el objetivo de obtener una longitud de enlace cercana a la longitud preferida especificado. El peso de esta fuerza, que representa la cantidad total de fuerza, se controla mediante un parámetro.
Para establecer este parámetro:
Ejemplo de cómo establecer la fuerza del peso de la longitud de enlace
forceDirectedLayout.setLinkLengthWeight(1.5);  
El valor predeterminado es 1. Si se aumenta el valor de este parámetro pueden obtenerse enlaces de longitudes más próximas a la longitud especificada, pero si se aumenta demasiado puede aumentar el número de intersecciones de enlaces.

Peso de la repulsión adicional entre nodos (FL)

Se puede calcular una fuerza de repulsión adicional entre los nodos que no están conectados mediante un enlace. El peso de esta fuerza, que representa la cantidad total de fuerza, se controla mediante un parámetro.
Para establecer este parámetro:
Ejemplo de cómo establecer el peso de la repulsión entre nodos
forceDirectedLayout.setAdditionalNodeRepulsionWeight(0.4);  
El valor predeterminado de este parámetro es 0.2f. Si se aumenta (o disminuye) el peso, aumenta (o disminuye) la prioridad que se otorga a la capacidad de mantener los nodos a una distancia mayor que el umbral de la distancia entre nodos. Consulte setNodeDistanceThreshold. Si se aumenta el peso también se reduce la capacidad del algoritmo de alcanzar la convergencia rápidamente.
Las figuras siguientes le permiten comparar el mismo gráfico representado con la repulsión adicional inhabilitada (Repulsión adicional inhabilitada, generada con Diseño Force-directed ) y, a continuación, habilitada (Repulsión adicional habilitada, generada con Diseño Force-directed ). Puede ver que la configuración “en estrella”, donde muchos nodos están conectados al mismo nodo central, se representa mejor cuando se habilita la repulsión adicional.
Configuración
en estrella con la repulsión adicional
inhabilitada
Repulsión adicional inhabilitada, generada con Diseño Force-directed
Configuración
en estrella representada más claramente con la repulsión adicional
habilitada
Repulsión adicional habilitada, generada con Diseño Force-directed

Umbral de la distancia entre nodos (FL)

La fuerza de repulsión adicional entre dos nodos no conectados mediante un enlace se calcula sólo cuando su distancia es menor que una distancia predefinida.
Para establecer esta distancia:
Ejemplo de cómo establecer el umbral de la distancia entre nodos
forceDirectedLayout.setNodeDistanceThreshold(25);  
Esta fuerza adicional se calcula sólo si el peso de la repulsión adicional entre nodos se establece en un valor mayor que el valor predeterminado 0.
Se recomienda que este umbral se establece en un valor menor que la longitud preferida de los enlaces.

Modalidad rápida de varios niveles: porcentaje máximo del tiempo transcurrido para el paso de retoques (FL)

En la modalidad rápida de varios niveles, el algoritmo lleva a cabo un paso final de retoques. Puede establecer el porcentaje máximo del tiempo ya transcurrido que debe dedicarse en el paso final de retoques cuando la modalidad de diseño es FAST_MULTILEVEL_MODE. Aumentar el valor de este parámetro puede mejorar la calidad del diseño, posiblemente a costa de una reducción de la velocidad.
Para establecer este parámetro:
Ejemplo de cómo establecer el porcentaje máximo del tiempo transcurrido que se dedicará en el paso final de retoques
forceDirectedLayout.setMaxPercentageOfElapsedTimeForRefinement(500); 
Este parámetro se utiliza solamente en la modalidad rápida de varios niveles.

Modalidad rápida de varios niveles: porcentaje máximo del tiempo total para el paso de retoques (FL)

En la modalidad rápida de varios niveles, el algoritmo lleva a cabo un paso final de retoques. Puede establecer el porcentaje máximo del tiempo total permitido que debe dedicarse en el paso final de retoques cuando la modalidad de diseño es FAST_MULTILEVEL_MODE. Aumentar el valor de este parámetro puede mejorar la calidad del diseño, posiblemente a costa de una reducción de la velocidad.
Para establecer este parámetro:
Ejemplo de cómo establecer el porcentaje máximo del tiempo total que se dedicará en el paso final de retoques
forceDirectedLayout.setMaxPercentageOfTotalAllowedTimeForRefinement(5); 
Este parámetro se utiliza solamente en la modalidad rápida de varios niveles.

Modalidad rápida de varios niveles: repetición máxima para convergencia (FL)

Puede establecer el número máximo de intentos para alcanzar la convergencia en cada paso cuando la modalidad de diseño FAST_MULTILEVEL_MODE. Aumentar el valor de este parámetro puede mejorar la calidad del diseño, posiblemente a costa de una reducción de la velocidad.
Para establecer este parámetro:
Ejemplo de cómo establecer el número máximo de intentos para alcanzar la convergencia en cada paso
forceDirectedLayout.setMaxRepeatForConvergence(5);
Este parámetro se utiliza solamente en la modalidad rápida de varios niveles.