Organigram Java maken

Organigrammen helpen de structuur van een organisatie te presenteren en bieden een duidelijke weergave van hiërarchieën en relaties tussen verschillende rollen en afdelingen. In deze blogpost onderzoeken we hoe u een organigram in Java kunt maken.

Waarom een organigram maken?

Duidelijkheid en communicatie: Organigrammen helpen bij het begrijpen van de structuur van een bedrijf, waardoor het gemakkelijker wordt om rollen en verantwoordelijkheden te communiceren.

Efficiëntie: ze helpen bij het identificeren van rapportagerelaties en het stroomlijnen van communicatiekanalen.

Hulpbronnenbeheer: Grafieken helpen bij het effectief beheren van hulpbronnen door een duidelijk beeld te geven van het personeelsbestand en hun posities.

Organigram maken - Java API-installatie

U kunt organigrammen maken in Java door uw omgeving te configureren, zoals het installeren van de JDK en een Java IDE. Installeer vervolgens de bibliotheek Conholdate.Total for Java met behulp van de volgende configuraties in het pom.xml-bestand van uw project:

<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>24.4</version>
<type>pom</type>
</dependency>

Organigram maken in Java

U kunt een organigram in Java maken door de onderstaande stappen te volgen:

  • Laad de masters uit een bestaande sjabloon met de klasse Diagram.
  • Geef waarden op om de hiërarchie op te bouwen.
  • Voeg de vormen in en maak verbindingen tussen knooppunten.
  • Geef het uitvoerorganigram weer met behulp van de opslagmethode.

Het volgende codefragment laat zien hoe u een organigram maakt in Java:

// Laad modellen uit elk bestaand diagram, stencil of sjabloon
String visioStencil = "Basic Shapes.vss";
String rectangleMaster = "Rectangle";
String connectorMaster = "Dynamic connector";
int pageNumber = 0;
double width = 1;
double height = 1;
double pinX = 4.25;
double pinY = 9.5;
// Definieer waarden om de hiërarchie samen te stellen
List<String> listPos = Arrays.asList(new String[] { "0", "0:0", "0:1", "0:2", "0:3", "0:4", "0:5", "0:6", "0:0:0", "0:0:1", "0:3:0", "0:3:1", "0:3:2", "0:6:0", "0:6:1" });
// Definieer een hashtabel om de tekenreeksnaam toe te wijzen aan een lange vorm-ID
Hashtable shapeIdMap = new Hashtable();
// Maak een nieuw diagram
Diagram diagram = new Diagram(visioStencil);
diagram.getPages().get(pageNumber).getPageSheet().getPageProps().getPageWidth().setValue(11);
for (String orgnode : listPos)
{
    // Voeg een nieuwe rechthoekige vorm toe
    long rectangleId = diagram.addShape(pinX++, pinY++, width, height, rectangleMaster, pageNumber);
    // Stel de eigenschappen van de nieuwe vorm in
    Shape shape = diagram.getPages().get(pageNumber).getShapes().getShape(rectangleId);
    shape.getText().getValue().add(new Txt(orgnode));
    shape.setName(orgnode);
    shapeIdMap.put(orgnode, rectangleId);
}
// Maak verbindingen tussen knooppunten
for (String orgName : listPos)
{
    int lastColon = orgName.lastIndexOf(':');
    if(lastColon > 0)
    {
        String parendName = orgName.substring(0, lastColon);
        long shapeId = (long)shapeIdMap.get(orgName);
        long parentId = (long)shapeIdMap.get(parendName);
        Shape connector1 = new Shape();
        long connecter1Id = diagram.addShape(connector1, connectorMaster, pageNumber);
        diagram.getPages().get(pageNumber).connectShapesViaConnector(parentId, ConnectionPointPlace.RIGHT,
            shapeId, ConnectionPointPlace.LEFT, connecter1Id);
    }
}

//automatische lay-out CompactTree-diagram
LayoutOptions compactTreeOptions = new LayoutOptions();
compactTreeOptions.setLayoutStyle(LayoutStyle.COMPACT_TREE);
compactTreeOptions.setDirection(LayoutDirection.DOWN_THEN_RIGHT);
compactTreeOptions.setEnlargePage(false);

diagram.getPages().get(pageNumber).layout(compactTreeOptions);

// Diagram opslaan
diagram.save("DrawCompactTreeChart_java.vsdx", SaveFileFormat.VSDX);

Maak een organigram in stroomdiagramformaat met behulp van Java

U kunt organigrammen in verschillende stijlen maken, inclusief de stroomdiagramstijl. Volg de onderstaande stappen om aan uw vereisten te voldoen:

  • Laad de masters van het bestaande stencil.
  • Voeg organisatieconnectoren en knooppunten toe.
  • Geef de lay-out voor het diagram op en schrijf het uitvoerdiagram.

De onderstaande voorbeeldcode laat zien hoe u een organigram in stroomdiagramindeling kunt maken met behulp van Java:

// Laad modellen uit elk bestaand diagram, stencil of sjabloon
String visioStencil = "Basic Shapes.vss";
String rectangleMaster = "Rectangle";
String connectorMaster = "Dynamic connector";
int pageNumber = 0;
double width = 1;
double height = 1;
double pinX = 4.25;
double pinY = 9.5;
// Definieer waarden om de hiërarchie samen te stellen
List<String> listPos = Arrays.asList(new String[] { "0", "0:0", "0:1", "0:2", "0:3", "0:4", "0:5", "0:6", "0:0:0", "0:0:1", "0:3:0", "0:3:1", "0:3:2", "0:6:0", "0:6:1" });
// Definieer een hashtabel om de tekenreeksnaam toe te wijzen aan een lange vorm-ID
Hashtable shapeIdMap = new Hashtable();
// Maak een nieuw diagram
Diagram diagram = new Diagram(visioStencil);
diagram.getPages().get(pageNumber).getPageSheet().getPageProps().getPageWidth().setValue(11);
for (String orgnode : listPos)
{
    // Voeg een nieuwe rechthoekige vorm toe
    long rectangleId = diagram.addShape(pinX++, pinY++, width, height, rectangleMaster, pageNumber);
    // Stel de eigenschappen van de nieuwe vorm in
    Shape shape = diagram.getPages().get(pageNumber).getShapes().getShape(rectangleId);
    shape.getText().getValue().add(new Txt(orgnode));
    shape.setName(orgnode);
    shapeIdMap.put(orgnode, rectangleId);
}
// Maak verbindingen tussen knooppunten
for (String orgName : listPos)
{
    int lastColon = orgName.lastIndexOf(':');
    if(lastColon > 0)
    {
        String parendName = orgName.substring(0, lastColon);
        long shapeId = (long)shapeIdMap.get(orgName);
        long parentId = (long)shapeIdMap.get(parendName);
        Shape connector1 = new Shape();
        long connecter1Id = diagram.addShape(connector1, connectorMaster, pageNumber);
        diagram.getPages().get(pageNumber).connectShapesViaConnector(parentId, ConnectionPointPlace.RIGHT,
            shapeId, ConnectionPointPlace.LEFT, connecter1Id);
    }
}

//automatische lay-out stroomdiagram
LayoutOptions flowChartOptions = new LayoutOptions();
flowChartOptions.setLayoutStyle(LayoutStyle.FLOW_CHART);
flowChartOptions.setDirection(LayoutDirection.TOP_TO_BOTTOM);
flowChartOptions.setEnlargePage(true);

diagram.getPages().get(pageNumber).layout(flowChartOptions);

// Diagram opslaan
diagram.save("DrawFlowChart_java.vsdx", SaveFileFormat.VSDX);

De organigrammen aanpassen

U kunt het organigram aanpassen door de lay-out, kleuren en labels aan te passen aan de behoeften van uw organisatie. U kunt met verschillende opties experimenteren om de beste vertegenwoordiging voor uw organisatie te vinden.

Gratis evaluatielicentie

U kunt een gratis tijdelijke licentie aanvragen om de API’s zonder enige evaluatiebeperkingen te evalueren.

Opsommen

Het maken van een organigram in Java is een eenvoudig proces als u dit artikel volgt. Door gebruik te maken van de besproken API’s kunt u de structuur van uw organisatie eenvoudig visualiseren en aanpassen, aangezien de organigrammen waardevolle hulpmiddelen zijn voor het verbeteren van de communicatie, de efficiëntie en het resourcebeheer binnen elke organisatie. Als u uw zorgen wilt bespreken, schrijf ons dan op forum.

Veelgestelde vragen

Kan ik het organigram integreren in een webapplicatie?

Ja, u kunt het maken van het organigram integreren in een webapplicatie.

Is het mogelijk om het organigram naar andere formaten te exporteren?

Ja, u kunt het organigram naar verschillende formaten exporteren, zoals PDF, PNG of SVG, afhankelijk van uw vereisten.

Zie ook