layout.setSize(new Dimension(1024,1024)); // Size of the layout VisualizationImageServer<GraphVertex, GraphEdge> vv = new VisualizationImageServer<GraphVertex, GraphEdge>(layout, layout.getSize()); vv.setPreferredSize(new Dimension(1200,1200)); // Viewing area size vv.getRenderContext().setVertexLabelTransformer(new Transformer<GraphVertex,String>() {
public void writeServerJPEGImage(File file) { VisualizationImageServer<Vertex, Edge> vis = new VisualizationImageServer<Vertex, Edge>(vv.getGraphLayout(), vv.getGraphLayout().getSize()); vis.setBackground(Color.WHITE); vis.getRenderContext().setEdgeDrawPaintTransformer(edgeColor); vis.getRenderContext().setVertexIconTransformer(vertexColor); BufferedImage image = (BufferedImage) vis.getImage( new Point2D.Double(vis.getWidth(), vis.getHeight()), new Dimension(vv.getGraphLayout().getSize())); try { ImageIO.write(image, "jpeg", file); } catch (Exception e) { e.printStackTrace(); } }
/** */ public VisualizationImageServerDemo() { // create a simple graph for the demo graph = createGraph(); vv = new VisualizationImageServer<>(graph, new KKLayoutAlgorithm<>(), new Dimension(600, 600)); vv.getRenderer() .setNodeRenderer( new GradientNodeRenderer<>(vv, Color.white, Color.red, Color.white, Color.blue, false)); vv.getRenderContext().setEdgeDrawPaintFunction(e -> Color.lightGray); vv.getRenderContext().setArrowFillPaintFunction(e -> Color.lightGray); vv.getRenderContext().setArrowDrawPaintFunction(e -> Color.lightGray); vv.getRenderContext().setNodeLabelFunction(Object::toString); vv.getRenderer() .getNodeLabelRenderer() .setPositioner(new BasicNodeLabelRenderer.InsidePositioner()); vv.getRenderer().getNodeLabelRenderer().setPosition(Renderer.NodeLabel.Position.AUTO); // create a frome to hold the graph final JFrame frame = new JFrame(); Container content = frame.getContentPane(); frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); Image im = vv.getImage(new Point2D.Double(300, 300), new Dimension(600, 600)); Icon icon = new ImageIcon(im); JLabel label = new JLabel(icon); content.add(label); frame.pack(); frame.setVisible(true); }
.collect(Collectors.toSet()); VisualizationImageServer<VertexRef, Edge> vv = new VisualizationImageServer<>(jungLayout, jungLayout.getSize()); vv.setPreferredSize(new Dimension(2000,2000)); // Viewing area size vv.getRenderContext().setVertexLabelTransformer(VertexRef::getLabel);
.collect(Collectors.toSet()); VisualizationImageServer<VertexRef, Edge> vv = new VisualizationImageServer<>(jungLayout, jungLayout.getSize()); vv.setPreferredSize(new Dimension(2000,2000)); // Viewing area size vv.getRenderContext().setVertexLabelTransformer(VertexRef::getLabel);
createEdges(v); vv = new VisualizationImageServer<String,Number>(new KKLayout<String,Number>(graph), new Dimension(600,600));
VisualizationImageServer<V, E> vis = new VisualizationImageServer<V, E>(layout, layout.getSize()); vis.setBackground(Color.WHITE); vis.getRenderContext().setEdgeArrowPredicate(new NoArrowPredicate<V, E>());
new VisualizationImageServer<AbstractType,String>( layout, layout.getSize());
new VisualizationImageServer<AbstractType,String>( layout, layout.getSize());
VisualizationImageServer<V, E> server = new VisualizationImageServer<V, E>( displacementLayout(layout, (int)(width * IMAGE_HORIZONTAL_MARGIN/2), (int)(height * IMAGE_VERTICAL_MARGIN/2)), new Dimension(width, height));
public void export(final DirectedGraph<ElementName, Dependency> g) throws IOException { final Dimension d = new Dimension(this.width, this.height); final Layout<ElementName, Dependency> layout = pickLayout(g, d); final VisualizationImageServer<ElementName, Dependency> viz = new VisualizationImageServer<ElementName, Dependency>( layout, d); final RenderContext<ElementName, Dependency> context = viz .getRenderContext(); context.setEdgeLabelTransformer(new EdgeLabeller()); context.setVertexLabelTransformer(new VertexLabeller()); final VertexRenderer vertexRenderer = new VertexRenderer( viz.getRenderContext()); viz.getRenderContext().setVertexShapeTransformer(vertexRenderer); viz.getRenderer().setVertexLabelRenderer(vertexRenderer); context.setVertexFillPaintTransformer(fillVertex()); context.setEdgeDrawPaintTransformer(fillEdge(g)); context.setEdgeLabelClosenessTransformer(closenessTransformer()); context.setEdgeStrokeTransformer(edgeWeight()); context.setEdgeArrowStrokeTransformer(edgeWeight()); context.setArrowFillPaintTransformer(fillEdge(g)); context.setArrowDrawPaintTransformer(fillEdge(g)); viz.setPreferredSize(new Dimension(this.width, this.height)); viz.setBackground(new Color(1, 1, 1, 0)); final SVGGraphics2D svgGenerator = new SVGGraphics2D(this.out, d); svgGenerator.writeHeader(); viz.paintAll(svgGenerator); svgGenerator.writeTrailer(); svgGenerator.dispose(); }
public void export(final DirectedGraph<ElementName, Dependency> g) throws IOException { final Dimension d = new Dimension(this.width, this.height); final Layout<ElementName, Dependency> layout = pickLayout(g, d); final VisualizationImageServer<ElementName, Dependency> viz = new VisualizationImageServer<ElementName, Dependency>( layout, d); final RenderContext<ElementName, Dependency> context = viz .getRenderContext(); context.setEdgeLabelTransformer(new EdgeLabeller()); context.setVertexLabelTransformer(new VertexLabeller()); final VertexRenderer vertexRenderer = new VertexRenderer( viz.getRenderContext()); viz.getRenderContext().setVertexShapeTransformer(vertexRenderer); viz.getRenderer().setVertexLabelRenderer(vertexRenderer); context.setVertexFillPaintTransformer(fillVertex()); context.setEdgeDrawPaintTransformer(fillEdge(g)); context.setEdgeLabelClosenessTransformer(closenessTransformer()); context.setEdgeStrokeTransformer(edgeWeight()); context.setEdgeArrowStrokeTransformer(edgeWeight()); context.setArrowFillPaintTransformer(fillEdge(g)); context.setArrowDrawPaintTransformer(fillEdge(g)); viz.setPreferredSize(new Dimension(this.width, this.height)); viz.setBackground(new Color(1, 1, 1, 0)); final SVGGraphics2D svgGenerator = new SVGGraphics2D(this.out, d); svgGenerator.writeHeader(); viz.paintAll(svgGenerator); svgGenerator.writeTrailer(); svgGenerator.dispose(); }
public void export(final DirectedGraph<ElementName, Dependency> g) throws IOException { final Dimension d = new Dimension(this.width, this.height); final Layout<ElementName, Dependency> layout = pickLayout(g, d); final VisualizationImageServer<ElementName, Dependency> viz = new VisualizationImageServer<ElementName, Dependency>( layout, d); final RenderContext<ElementName, Dependency> context = viz .getRenderContext(); context.setEdgeLabelTransformer(new EdgeLabeller()); context.setVertexLabelTransformer(new VertexLabeller()); final VertexRenderer vertexRenderer = new VertexRenderer( viz.getRenderContext()); viz.getRenderContext().setVertexShapeTransformer(vertexRenderer); viz.getRenderer().setVertexLabelRenderer(vertexRenderer); context.setVertexFillPaintTransformer(fillVertex()); context.setEdgeDrawPaintTransformer(fillEdge(g)); context.setEdgeLabelClosenessTransformer(closenessTransformer()); context.setEdgeStrokeTransformer(edgeWeight()); context.setEdgeArrowStrokeTransformer(edgeWeight()); context.setArrowFillPaintTransformer(fillEdge(g)); context.setArrowDrawPaintTransformer(fillEdge(g)); viz.setPreferredSize(new Dimension(this.width, this.height)); viz.setBackground(new Color(1, 1, 1, 0)); final SVGGraphics2D svgGenerator = new SVGGraphics2D(this.out, d); svgGenerator.writeHeader(); viz.paintAll(svgGenerator); svgGenerator.writeTrailer(); svgGenerator.dispose(); }