Tạo sơ đồ trong Python | API trình tạo sơ đồ Python

sơ đồ là minh họa trực quan về một quy trình. Nó sử dụng một tập hợp các ký hiệu, ví dụ như hộp, hình thoi và mũi tên để minh họa các bước liên quan và các quyết định cần đưa ra ở mỗi giai đoạn.

Bài viết này bao gồm các chủ đề sau:

API trình tạo sơ đồ Python

Aspose.Diagram for Python là một thư viện cho phép các lập trình viên tạo, chỉnh sửa và thao tác các tệp Visio trực tiếp trong các ứng dụng Python của họ. Nó cung cấp một bộ API để làm việc với tệp Visio. Chúng tôi sẽ sử dụng nó để tạo lưu đồ theo chương trình bằng Python.

Vui lòng tải xuống gói hoặc cài đặt API từ PyPI bằng cách sử dụng lệnh pip sau trong bảng điều khiển:

pip install aspose-diagram-python 

Tạo sơ đồ theo lập trình trong Python

Chúng ta có thể dễ dàng tạo sơ đồ bằng Python bằng cách thực hiện theo các bước bên dưới:

  1. Tạo lược đồ cho sơ đồ.
  2. Tải bản gốc để thêm hình bằng lớp Sơ đồ.
  3. Tạo hình bằng lớp Shape.
  4. Thêm hình dạng vào sơ đồ bằng phương thức addshape().
  5. Thêm các trình kết nối hình dạng bằng phương thức connectshapesviaconnector().
  6. Đặt bố cục sơ đồ bằng lớp LayoutOptions.
  7. Sau đó, chỉ định các tùy chọn lưu bằng lớp DiagramSaveOptions.
  8. Cuối cùng, lưu tệp đầu ra ở định dạng VSDX bằng phương thức save().

Mẫu mã sau đây cho thấy cách tạo sơ đồ lưu đồ trong Python.

# Mẫu mã này trình bày cách tạo sơ đồ trong Python.
import aspose.diagram
from aspose.diagram import *

def createFlowChart():
    # lược đồ cho sơ đồ được tạo
    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 = {}

    # Thêm hình dạng và trình kết nối từ lược đồ
   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()
Tạo sơ đồ lập trình bằng Python.

Nhận giấy phép API miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để sử dụng API mà không bị giới hạn về đánh giá.

Sơ đồ lập trình Python – Tài nguyên miễn phí

Bạn có thể tìm hiểu thêm về lập trình Python bằng sơ đồ và khám phá nhiều tính năng khác của thư viện bằng cách sử dụng các tài nguyên bên dưới:

Phần kết luận

Trong bài viết này, bạn đã học cách tạo sơ đồ bằng lập trình bằng Python. Bằng cách tận dụng Aspose.Diagram for Python, bạn có thể tạo nhiều loại sơ đồ khác nhau bằng cách sử dụng các loại hình dạng khác nhau, như quyết định hoặc quy trình, cũng như các bố cục khác nhau, như từ trái sang phải hoặc phải sang trái, v.v. vui lòng liên hệ với chúng tôi trên diễn đàn hỗ trợ miễn phí của chúng tôi.

Xem thêm