#graphics #graph #label #jung
#графика #График #метка #jung
Вопрос:
Я использую JUNG2 для рисования некоторых графиков.
Это изображение, которое я получаю: http://img841.imageshack.us/img841/205/graphvizkk3312164f020b4.png
Я хотел бы:
1) измените порядок рендеринга (метки должны быть последними объектами, которые будут нарисованы);
2) добавьте полупрозрачный фон к надписям.
3) измените цвет фона всего изображения.
Есть идеи о том, как это сделать? Документация JUNG2 не очень обширна по этим вопросам.
Mulone
Ответ №1:
(1) Для этого вам пришлось бы взломать код рендеринга; я не верю, что мы поддерживаем это на данный момент.
ОБНОВЛЕНИЕ: Я присмотрелся повнимательнее. На самом деле JUNG поддерживает это, не взламывая существующие библиотеки; возможно, самый простой способ — это создать подкласс BasicRenderer
, а затем переопределить render()
метод, чтобы все происходило в том порядке, который вы хотите. (Я рекомендую визуализировать вершины после ребер.) Как только вы это сделаете, вы создадите экземпляр своего пользовательского Renderer
и вызовете VisualizationViewer.setRenderer(customRenderer)
.
(2) Надписи соответствуют HTML-коду (т. Е. окружите вашу надпись <html></html>
, а затем поместите в нее любые теги, которые вам нравятся).
(3) BasicVisualizationServer
(и его подклассы, например VisualizationViewer
) наследуются от JComponent
, который определяет setBackground(Color)
.
Комментарии:
1. Спасибо! Я думаю, было бы полезно установить порядок рендеринга меток как самый высокий.
2. Вы можете сделать это самостоятельно, если хотите; смотрите Пересмотренный ответ выше.