Flowcharting

Flowcharting element definitions

class schemdraw.flow.flow.Box(**kwargs)

Flowchart Process Box. Default box has minimum size (3, 2) but will expand to fit the label text. Size may be manually fixed using w and h arguments.

Parameters:
  • w – Width of box

  • h – Height of box

Anchors:
  • 16 compass points (N, S, E, W, NE, NNE, etc.)

schemdraw.flow.flow.Circle

alias of Connect

class schemdraw.flow.flow.Connect(**kwargs)

Flowchart connector/circle

Parameters:

r – Radius of circle

Anchors:
  • 16 compass points (N, S, E, W, NE, NNE, etc.)

class schemdraw.flow.flow.Data(*, slant=0.5, **kwargs)

Flowchart data or input/output box (parallelogram)

Parameters:
  • w – Width of box

  • h – Height of box

  • s – slant of sides

Anchors:
  • 16 compass points (N, S, E, W, NE, NNE, etc.)

class schemdraw.flow.flow.Decision(N=None, E=None, S=None, W=None, font=None, fontsize=14, **kwargs)

Flowchart decision (diamond)

Parameters:
  • w – Width of box

  • h – Height of box

  • N (Optional[str]) – text for North decision branch

  • S (Optional[str]) – text for South decision branch

  • E (Optional[str]) – text for East decision branch

  • W (Optional[str]) – text for West decision branch

  • font (Optional[str]) – Font family/name

  • fontsize (float) – Point size of label font

Anchors:
  • 16 compass points (N, S, E, W, NE, NNE, etc.)

class schemdraw.flow.flow.Ellipse(**kwargs)

Flowchart ellipse

Parameters:
  • w – Width of ellipse

  • h – Height of ellipse

Anchors:
  • 16 compass points (N, S, E, W, NE, NNE, etc.)

schemdraw.flow.flow.Process

alias of Box

class schemdraw.flow.flow.RoundBox(*, cornerradius=None, **kwargs)

Alternate Process box with rounded corners

Parameters:
  • w – Width of box

  • h – Height of box

  • cornerradius (Optional[float]) – Radius of round corners [default: 0.3]

Anchors:
  • 16 compass points (N, S, E, W, NE, NNE, etc.)

schemdraw.flow.flow.RoundProcess

alias of RoundBox

schemdraw.flow.flow.Start

alias of Terminal

schemdraw.flow.flow.State

alias of Connect

class schemdraw.flow.flow.StateEnd(**kwargs)

End/Accept State (double circle)

Parameters:
  • r – radius

  • dr – distance between circles

Anchors:
  • 16 compass points (N, S, E, W, NE, NNE, etc.)

class schemdraw.flow.flow.Subroutine(*, s=None, **kwargs)

Flowchart subroutine/predefined process. Box with extra vertical lines near sides.

Parameters:
  • w – Width of box

  • h – Height of box

  • s (Optional[float]) – spacing of side lines [default: 0.3]

Anchors:
  • 16 compass points (N, S, E, W, NE, NNE, etc.)

class schemdraw.flow.flow.Terminal(*args, **kwargs)

Flowchart start/end terminal

Parameters:
  • w – Width of box

  • h – Height of box

Anchors:
  • 16 compass points (N, S, E, W, NE, NNE, etc.)

schemdraw.flow.flow.labelsize(label, pad)

Get unit size of label and padding