Questo tutorial spiega come creare un diagramma di flusso in Python. Fornisce un algoritmo passo dopo passo e un codice di esempio funzionante per creare un generatore di diagrammi di flusso in Python. Inoltre, puoi personalizzare la creazione del diagramma modificando i tipi di forme, le connessioni, lo schema, ecc., in base alle tue esigenze.
Passaggi per creare un diagramma di flusso in Python
- Configurare l’ambiente di sistema scaricando Aspose.Diagram per creare diagrammi di flusso.
- Definire uno schema per il diagramma di flusso richiesto.
- Creare un’istanza della classe Diagram e inserire diverse forme dallo stencil principale.
- Specificare il layout finale e generare il diagramma di flusso con il metodo save.
Questi passaggi delineano il processo per creare un generatore di diagrammi di flusso in Python. Nel primo passaggio, definisci uno schema per specificare i parametri richiesti. Successivamente, inserisci le diverse forme utilizzando lo stencil principale prima di esportare il diagramma di flusso generato.
Codice per creare un generatore di diagrammi di flusso in Python
import aspose.diagram | |
from aspose.diagram import * | |
path = "C://" | |
import aspose.diagram | |
from aspose.diagram import * | |
def createFlowChart(): | |
# schema for the diagram to be created | |
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(path + "BasicShapes.vss") | |
page = diagram.pages[0] | |
shape_names = {} | |
# Adding shapes and connectors from the schema | |
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(path + "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() |
Il codice di esempio sopra è una rapida dimostrazione di come disegnare un diagramma di flusso in Python. Funziona principalmente con la classe Diagram per caricare diverse forme, impostare il layout del diagramma di flusso e generare il diagramma finale. Inoltre, puoi modificare il layout con diverse orientazioni, come da sinistra a destra, da destra a sinistra, dall’alto verso il basso, ecc., per adattare il design alle tue esigenze.
Questo articolo fornisce informazioni su come progettare un costruttore di diagrammi di flusso in Python. Tuttavia, se desideri creare un organigramma (ORG chart), leggi l’articolo su Creare un organigramma in Python.