(La siguiente respuesta asume Jung2; no estoy familiarizado con pre-Jung2).
Uno de los puntos fuertes de Jung es que es muy extensible y fácil de extender. Jung le permite conectar varios transformadores (propiedades de representación simples), renderizadores (representación más compleja), y así sucesivamente, para personalizar el comportamiento cuando el valor predeterminado no es del todo correcto. Estos generalmente se instalan en RenderContext (que puede obtener de VisualizationViewer).
Por otro lado, sus inconvenientes son su complejidad y la falta de documentación decente. Si vas a hacer cualquier personalización de moderada a pesada, necesitarás profundizar en la fuente de Jung.
Por ejemplo, la representación de etiqueta de vértice se puede personalizar insertando un nuevo procesador de etiqueta de vértice (interfaz Renderer.VertexLabel). Por ejemplo, puede instanciar BasicVertexLabelRenderer y especificar una posición diferente (norte, oeste, centro, etc.). Podrías poner tu etiqueta en el centro, si estás dispuesto a cambiar la forma en algo más grande que ese círculo (para hacerlo, instala tu propio transformador de forma de vértice, una instancia de Transformer). De forma alternativa, podría crear su propia implementación personalizada de esta interfaz que represente un fondo debajo del texto de la etiqueta.
También podría instalar su propia versión ajustada de Renderer.EdgeLabel (consulte el BasicEdgeLabelRenderer de Jung) para personalizar el posicionamiento de la etiqueta de borde.
¿Sabe dónde está documentado este uso de HTML en JUNG. En otras palabras, ¿cuáles son las posibilidades y cuáles son las limitaciones del uso de HTML en JUNG? – madewael