La siguiente lista de preguntas frecuentes proporciona
algunas sugerencias útiles para utilizar los algoritmos de diseño.
Puede encontrar respuestas a las preguntas que surgen cuando se
utiliza el paquete de diseño de gráficos.
Preguntas frecuentes sobre los algoritmos de diseño
Pregunta |
Respuesta |
---|---|
He ejecutado el diseño y no pasa nada (no se
mueve ningún nodo). ¿Por qué? |
Una posibilidad es que los algoritmos de
diseño que se proporcionan en el producto están diseñados para no
hacer nada de forma predeterminada si no se ha producido ningún
cambio en el gráfico desde la última vez que el diseño se ha
ejecutado correctamente en el mismo gráfico. Un cambio significa que
se ha movido un nodo, o que se ha añadido, eliminado o cambiado un
nodo o enlace. Puede forzar una nueva ejecución del diseño, aunque no
se haya producido ningún cambio, llamando al método
performLayout(force:Boolean = false, traverse:Boolean = false):int
con un valor
true para el
argumento force. Otra posibilidad es que durante la ejecución del diseño
se haya producido un error o un caso especial. En primer lugar, debe
comprobar si el método
performLayout() ha
generado un error. Si no se ha generado ningún error, recupere la
propiedad code en la
instancia del informe de diseño. Consulte este valor en la
documentación de la clase de informes de diseño adecuada. (Para
obtener más información, consulte
Utilización de un informe de diseño de gráficos).
|
Con el algoritmo
Force-directed en modalidad incremental,
tras haber ejecutado el diseño una vez, no veo ningún movimiento,
aunque utilice la opción de forzar diseño. ¿Por qué? |
Es probable que la razón sea que el algoritmo
ha alcanzado la convergencia la primera vez que se ha ejecutado el
diseño. Cuando el diseño se vuelve a ejecutar, detecta que la
convergencia ya se ha alcanzado y se detiene. Si realmente desea
seguir trabajando, por ejemplo, para “desagrupar” una parte del
gráfico, puede que tenga que mover uno o varios nodos para cambiar la
configuración inicial. (El algoritmo depende de la
configuración inicial). |
Después de ejecutar el diseño, el gráfico
aparece lejos de su posición inicial. ¿Por qué? |
La mayoría de los algoritmos de diseño
utilizan un parámetro región de diseño para controlar el tamaño y la
posición del diseño. (Para obtener más información, consulte
Región de diseño).
Dependiendo del valor de este parámetro, los nodos pueden moverse
lejos de sus posiciones iniciales. Para
saber si un algoritmo de diseño permite utilizar un parámetro región
de diseño, consulte la documentación para ver si la clase de diseño
sustituye el siguiente método de la clase base para que devuelva
true : Otros algoritmos tienen un mecanismo
distinto con el que puede especificar la ubicación del diseño.
Puede que el valor predeterminado del parámetro de posición sea tal
que el gráfico se presente lejos de su posición inicial. |
Al utilizar determinados algoritmos de diseño
en ciertos gráficos, hay nodos que se solapan. ¿Por qué y qué puedo
hacer para evitarlo? |
Una posibilidad puede estar relacionada con
las distintas formas que tienen los algoritmos de diseño de gestionar
el tamaño de los nodos: - Los algoritmos Diseño de árbol y jerárquico siempre
evitan el solapamiento de los nodos. (El algoritmo Diseño de enlaces
no mueve los nodos. Sólo cambia la forma de los enlaces de modo que
las intersecciones y los solapamientos se reducen. El tamaño de los
nodos se tiene en cuenta).
- El algoritmo Force-directed
(con la opción “Respetar los tamaños de los nodos” habilitado) en
muchos casos logra evitar los nodos que se solapan.
De cualquier forma, si el algoritmo de
diseño admite el mecanismo de la región de diseño (consulte
Región de diseño),
intente aumentar el tamaño de la región de diseño. Por
ejemplo, si el gráfico contiene cientos de nodos, no es razonable
utilizar una región de diseño pequeña, como 600x600. No hay espacio
suficiente para todos los nodos. Intente utilizar una región de
diseño mayor, de 5000x5000, por ejemplo.
El tamaño óptimo de la región de diseño depende no sólo del número de
nodos, sino también de su tamaño. Si los nodos son relativamente
grandes con respecto al tamaño de la región de diseño, puede ser
necesario ajustar algunos de los parámetros (por ejemplo, la longitud
de enlace preferida para el Diseño
Force-directed). |
En algunas redes, hay dos (o más) subredes
que no están conectadas. ¿Cómo afecta esto a los algoritmos de
diseño? |
Depende de la clase de diseño que utilice: -
ibm_ilog.graphlayout.forcedirected.ForceDirectedLayout :
este algoritmo admite gráficos no conexos, pero normalmente es mejor
basarse en el parámetro “diseño de componentes conectados”
automático. (Consulte
Diseño de componentes conectados ).
-
ibm_ilog.graphlayout.hierarchical.HierarchicalLayout
y
ibm_ilog.graphlayout.tree.TreeLayout :
tienen soporte incorporado para gráficos no conexos. Opcionalmente,
puede utilizar el soporte automático de la clase base. (Consulte
Diseño de componentes conectados ).
-
ibm_ilog.graphlayout.longlink.LongLinkLayout ,
ibm_ilog.graphlayout.shortlink.ShortLinkLayout,
ibm_ilog.graphlayout.grid.GridLayout ,
ibm_ilog.graphlayout.random.RandomLayout :
estos algoritmos admiten gráficos conexos y no conexos. Su
comportamiento es el mismo para ambas categorías de gráficos. |
Conocemos algunos atributos de la red (por
ejemplo, sabemos cuál es el conmutador principal y cuál debe ser el
centro). ¿El algoritmo de diseño tiene en cuenta esos
atributos? |
Depende del algoritmo de diseño. - El Diseño circular le permite especificar información
sobre la topología física de la red. Puede especificar qué nodos
pertenecen al mismo clúster (en anillo o en estrella), el orden de
los nodos en el clúster y qué nodo es el centro de un clúster en
estrella.
- En el Diseño en árbol, puede
especificar el nodo raíz. - En el algoritmo Diseño jerárquico,
puede especificar los índices de posición y los índices de nivel de
los nodos, así como restricciones de posicionamiento relativo. |
Si utilizo IBM ILOG
Dojo Diagrammer en equipos distintos con un
navegador diferente, a veces obtengo diseños distintos para el mismo
gráfico y con los mismos parámetros. ¿Por qué?
|
1. Los equipos y navegadores distintos pueden ser más
lentos o más rápidos. Si el algoritmo de diseño que utiliza detiene
el cálculo cuando ha transcurrido el tiempo permitido especificado,
un sistema o navegador más lento hace que el cálculo se detenga
antes. Esto puede explicar los resultados diferentes. Puede pasar
incluso con el mismo equipo y navegador si la carga del sistema
aumenta. Tal vez tenga que aumentar la especificación de tiempo
permitido cuando el diseño se ejecuta en un sistema más lento o un
navegador diferente.
|
Utilizo los algoritmos Diseño de enlaces cortos y largos
para diseñar los enlaces de una red de objetos gráficos.
Cuando varios enlaces se conectan con
la misma cara de un nodo, se solapan, pero yo esperaba que respetaran
el parámetro “desplazamiento de enlace” (o “tamaño de la
cuadrícula”) del Diseño de enlaces. ¿Por qué? |
Algunos parámetros dimensionales de los
algoritmos de diseño deben elegirse en función del tamaño de los
nodos.
Es el caso de los parámetros “desplazamiento de enlace” y “distancia
de bypass” para el Diseño de enlaces cortos, y del tamaño de la
cuadrícula para el Diseño de enlaces largos. De hecho, sus valores
predeterminados no son adecuados cuando los nodos son grandes. Comparados con este tamaño, los valores predeterminados de
los parámetros son tan pequeños que parecen ser cero.
La solución es aumentar los valores de los parámetros dimensionales,
teniendo en cuenta el tamaño de los nodos. Si distintos nodos tienen
tamaños diferentes, puede utilizarse el tamaño medio o grande de los
nodos para calcular los parámetros como una fracción de este tamaño. |