Utwórz schemat organizacyjny firmy w Python

Schemat organizacyjny wizualnie przedstawia hierarchię i strukturę firmy, rządu lub organizacji, służąc takim celom, jak kształtowanie polityki i planowanie. Wykorzystując różne kształty i złącza, możesz projektować różne typy wykresów. W tym artykule znajduje się przewodnik krok po kroku dotyczący tworzenia schematu organizacyjnego firmy w języku Python, umożliwiający skuteczne zilustrowanie i zaprezentowanie struktury organizacji.

W tym artykule poruszono następujące tematy:

  1. API narzędzia do tworzenia wykresów organizacyjnych w Python
  2. Utwórz schemat organizacyjny firmy w stylu CompactTree
  3. Utwórz schemat organizacyjny firmy w stylu schematu blokowego
  4. Darmowe zasoby

API Python do tworzenia wykresów organizacyjnych – pobierz bezpłatnie

Do tworzenia schematów organizacyjnych firmy wykorzystamy Aspose.Diagram for Python. Jest to potężny interfejs API, który umożliwia programistom programowe tworzenie, manipulowanie i konwertowanie diagramów Visio. Dzięki Aspose.Diagram for Python możesz zautomatyzować tworzenie i aktualizację schematów organizacyjnych, co czyni go niezbędnym narzędziem w aplikacjach HR, zarządzania i analiz biznesowych.

Proszę pobierz pakiet lub zainstaluj API z PyPI, używając następującego polecenia pip w konsoli:

pip install aspose-diagram-python 

Utwórz schemat organizacyjny firmy w stylu CompactTree

Możemy łatwo utworzyć schemat organizacyjny firmy w stylu CompactTree, wykonując poniższe kroki:

  1. Załaduj wzorce z dowolnego istniejącego diagramu, szablonu lub szablonu.
  2. Zdefiniuj wartości, aby skonstruować hierarchię.
  3. Utwórz instancję klasy Diagram.
  4. Dodaj kształty i połączenia między węzłami.
  5. Określ LayoutOptions i ustaw LayoutStyle.COMPACTTREE.
  6. Zapisz diagram wyjściowy za pomocą metody save().

Poniższy przykładowy kod pokazuje, jak utworzyć schemat organizacyjny firmy w stylu CompactTree przy użyciu języka Python.

# Ten przykładowy kod pokazuje, jak utworzyć schemat organizacyjny firmy w stylu CompactTree
import aspose.diagram
from aspose.diagram import *

# Załaduj wzorce z dowolnego istniejącego diagramu, szablonu lub szablonu
visioStencil = "BasicShapes.vss"
rectangleMaster = "Rectangle"
connectorMaster = "Dynamic connector"
pageNumber = 0
width = 1.0
height = 1.0
pinX = 4.25
pinY = 9.5

# Zdefiniuj wartości, aby skonstruować hierarchię
listPos = ["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"]

# Zdefiniuj słownik, aby odwzorować nazwę ciągu na długi identyfikator kształtu
shapeIdMap = {}

# Utwórz nowy diagram
diagram = Diagram(visioStencil)
diagram.pages[pageNumber].page_sheet.page_props.page_width.value = 11.0

for orgnode in listPos:
    # Dodaj nowy kształt prostokąta
    rectangleId = diagram.add_shape(pinX, pinY, width, height, rectangleMaster, pageNumber)
    pinX += 1
    pinY += 1
    # Ustaw właściwości nowego kształtu
    shape = diagram.pages[pageNumber].shapes.get_shape(rectangleId)
    shape.text.value.add(Txt(orgnode))
    shape.name = orgnode
    shapeIdMap[orgnode] = rectangleId

# Utwórz połączenia między węzłami
for orgName in listPos:
    lastColon = orgName.rfind(':')
    if lastColon > 0:
        parentName = orgName[:lastColon]
        shapeId = shapeIdMap[orgName]
        parentId = shapeIdMap[parentName]
        connector1 = Shape()
        connecter1Id = diagram.add_shape(connector1, connectorMaster, pageNumber)
        diagram.pages[pageNumber].connect_shapes_via_connector(parentId, manipulation.ConnectionPointPlace.RIGHT,
                                                               shapeId, manipulation.ConnectionPointPlace.LEFT, connecter1Id)

# Automatyczny układ wykresu CompactTree
compactTreeOptions = autolayout.LayoutOptions()
compactTreeOptions.layout_style = autolayout.LayoutStyle.COMPACT_TREE
compactTreeOptions.direction = autolayout.LayoutDirection.DOWN_THEN_RIGHT
compactTreeOptions.enlarge_page = False

diagram.pages[pageNumber].layout(compactTreeOptions)

# Zapisz diagram
diagram.save("CompactTreeChart_out.vsdx", SaveFileFormat.VSDX)
Utwórz schemat organizacyjny firmy w stylu CompactTree przy użyciu języka Python

Utwórz schemat organizacyjny w stylu schematu blokowego

Podobnie możemy również utworzyć schemat organizacyjny firmy w stylu FlowChart, wykonując powyższe kroki. Musimy jednak tylko określić LayoutStyle.FLOWCHART w kroku 5.

Poniższy przykładowy kod pokazuje, jak utworzyć schemat organizacyjny firmy w stylu FlowChart przy użyciu języka Python.

# Ten przykładowy kod pokazuje, jak utworzyć schemat organizacyjny firmy w stylu FlowChart
import aspose.diagram
from aspose.diagram import *

# Załaduj wzorce z dowolnego istniejącego diagramu, szablonu lub szablonu
visioStencil = "BasicShapes.vss"
rectangleMaster = "Rectangle"
connectorMaster = "Dynamic connector"
pageNumber = 0
width = 1.0
height = 1.0
pinX = 4.25
pinY = 9.5

# Zdefiniuj wartości, aby skonstruować hierarchię
listPos = ["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"]

# Zdefiniuj słownik, aby odwzorować nazwę ciągu na długi identyfikator kształtu
shapeIdMap = {}

# Utwórz nowy diagram
diagram = Diagram(visioStencil)

for orgnode in listPos:
    # Dodaj nowy kształt prostokąta
    rectangleId = diagram.add_shape(pinX, pinY, width, height, rectangleMaster, pageNumber)
    pinX += 1
    pinY += 1
    # Ustaw właściwości nowego kształtu
    shape = diagram.pages[pageNumber].shapes.get_shape(rectangleId)
    shape.text.value.add(Txt(orgnode))
    shape.name = orgnode
    shapeIdMap[orgnode] = rectangleId

# Utwórz połączenia między węzłami
for orgName in listPos:
    lastColon = orgName.rfind(':')
    if lastColon > 0:
        parentName = orgName[:lastColon]
        shapeId = shapeIdMap[orgName]
        parentId = shapeIdMap[parentName]
        connector1 = Shape()
        connecter1Id = diagram.add_shape(connector1, connectorMaster, pageNumber)
        diagram.pages[pageNumber].connect_shapes_via_connector(parentId, manipulation.ConnectionPointPlace.RIGHT,
                                                               shapeId, manipulation.ConnectionPointPlace.LEFT, connecter1Id)

# Schemat blokowy automatycznego układu
flowChartOptions = autolayout.LayoutOptions()
flowChartOptions.layout_style = autolayout.LayoutStyle.FLOW_CHART
flowChartOptions.direction = autolayout.LayoutDirection.TOP_TO_BOTTOM
flowChartOptions.enlarge_page = True

diagram.pages[pageNumber].layout(flowChartOptions)

# Zapisz diagram
diagram.save("FlowChart_out.vsdx", SaveFileFormat.VSDX)
Utwórz schemat organizacyjny firmy w stylu schematu blokowego za pomocą języka Python

Uzyskaj bezpłatną tymczasową licencję

Zdobądź bezpłatną licencję, aby tworzyć schematy organizacyjne firmy w Visio bez ograniczeń. Odwiedź naszą stronę „Licencja tymczasowa”, aby poznać proste kroki umożliwiające uzyskanie bezpłatnej licencji i od razu zacznij korzystać z interfejsu API narzędzia do tworzenia wykresów organizacyjnych w języku Python!

Kreator schematów organizacyjnych w języku Python — bezpłatne zasoby

Oprócz tworzenia schematów organizacyjnych firmy możesz dowiedzieć się więcej na temat programowego tworzenia lub edytowania schematów organizacyjnych oraz poznać różne inne funkcje biblioteki, korzystając z poniższych zasobów:

Wniosek

W tym poście na blogu widzieliśmy, jak utworzyć schemat organizacyjny firmy w Python za pomocą Aspose.Diagram for Python. Za pomocą zaledwie kilku linijek kodu możesz stworzyć profesjonalnie wyglądający wykres przedstawiający strukturę Twojej firmy. Aspose.Diagram for Python to potężne narzędzie, które może pomóc zautomatyzować proces tworzenia i modyfikowania diagramów, dzięki czemu jest niezbędną biblioteką dla każdego programisty Python pracującego z plikami Visio. W przypadku jakichkolwiek niejasności prosimy o kontakt na naszym bezpłatnym forum pomocy technicznej.

Zobacz też