在 Python 中创建流程图 | Python 流程图制作 API

流程图 是流程的直观说明。它使用一组符号(例如方框、菱形和箭头)来演示所涉及的步骤以及每个阶段需要做出的决策。

本文涵盖以下主题:

Python 流程图制作 API

Aspose.Diagram for Python 是一个库,使程序员能够直接在其 Python 应用程序中创建、编辑和操作 Visio 文件。它提供了一组用于处理 Visio 文件 的 API。我们将使用它在 Python 中以编程方式创建流程图。

请在控制台中使用以下 pip 命令下载软件包从 PyPI 安装 API:

pip install aspose-diagram-python 

在 Python 中以编程方式创建流程图

我们可以按照以下步骤轻松地用Python制作流程图:

  1. 创建图表的架构。
  2. 使用图表类加载用于添加形状的母版。
  3. 使用 Shape 类创建形状。
  4. 使用 addshape() 方法将形状添加到图表中。
  5. 使用 connectshapesviaconnector() 方法添加形状连接器。
  6. 使用 LayoutOptions 类设置图表布局。
  7. 之后,使用DiagramSaveOptions 类指定保存选项。
  8. 最后,使用 save() 方法将输出文件保存为 VSDX 格式。

以下代码示例展示了如何在 Python 中创建流程图。

# 此代码示例演示了如何在 Python 中创建流程图。
import aspose.diagram
from aspose.diagram import *

def createFlowChart():
    # 要创建的图表的架构
    diagram_object = Input(
        input_rectangles=[
            InputRectangle("A", "Manager"),
            InputRectangle("B", "Team Leader"),
            InputRectangle("C", "Team Member"),
            InputRectangle("D", "Team Member"),
            InputRectangle("E", "Team Member")
        ],
        input_connectors=[
            InputConnector("A", "B"),
            InputConnector("B", "C"),
            InputConnector("B", "D"),
            InputConnector("B", "E")
        ]
    )

    diagram = Diagram("D:\\Files\\BasicShapes.vss")
    page = diagram.pages[0]

    shape_names = {}

    # 从架构中添加形状和连接器
   for rectangle in diagram_object.InputRectangles:
        shape = Shape()
        shape_id = diagram.add_shape(shape, "Rectangle", 0)
        shape_names[rectangle.Name] = shape_id
        shape = page.shapes.get_shape(shape_id)
        shape.text.value.add(Txt(rectangle.Text))

   for connector in diagram_object.InputConnectors:
        connector_id = diagram.add_shape(Shape(), "Dynamic connector", 0)
        page.connect_shapes_via_connector(
            shape_names[connector.OriginShapeName],
            aspose.diagram.manipulation.ConnectionPointPlace.RIGHT,
            shape_names[connector.DestinationShapeName],
            aspose.diagram.manipulation.ConnectionPointPlace.LEFT,
            connector_id
        )

    layout_options = aspose.diagram.autolayout.LayoutOptions()
    layout_options.layout_style = aspose.diagram.autolayout.LayoutStyle.FLOW_CHART
    layout_options.direction = aspose.diagram.autolayout.LayoutDirection.LEFT_TO_RIGHT
    layout_options.space_shapes = 5.0
    layout_options.enlarge_page = True
    

    diagram.layout(layout_options)

    page.page_sheet.print_props.print_page_orientation.value = PrintPageOrientationValue.LANDSCAPE

    save_options = aspose.diagram.saving.DiagramSaveOptions()
    save_options.save_format = SaveFileFormat.VSDX
    save_options.auto_fit_page_to_drawing_content = True

    diagram.save("D:\\Files\\flowchart_output.vsdx", save_options)
        
class Input:
    def __init__(self, input_rectangles=None, input_connectors=None):
        self.InputRectangles = input_rectangles if input_rectangles else []
        self.InputConnectors = input_connectors if input_connectors else []

class InputRectangle:
    def __init__(self, name, text):
        self.Name = name
        self.Text = text

class InputConnector:
    def __init__(self, origin_shape_name, destination_shape_name):
        self.OriginShapeName = origin_shape_name
        self.DestinationShapeName = destination_shape_name
        
createFlowChart()
在 Python 中以编程方式创建流程图。

获取免费 API 许可证

您可以获得免费的临时许可证,以便在没有评估限制的情况下使用 API。

Python 编程流程图 – 免费资源

您可以使用以下资源了解有关流程图 Python 编程的更多信息,并探索该库的各种其他功能:

结论

在本文中,您学习了如何在 Python 中以编程方式创建流程图。通过利用 Aspose.Diagram for Python,您可以使用不同类型的形状(例如决策或流程)以及不同的布局(例如从左到右或从右到左等)创建各种类型的流程图。如果有任何歧义,请通过我们的免费支持论坛联系我们。

也可以看看