A style object can be created as:
BoxStyle.Round(pad=0.2)
or:
BoxStyle("Round", pad=0.2)
or:
BoxStyle("Round, pad=0.2")
The following boxstyle classes are defined.
========== ============== =========================== Class Name Attrs ========== ============== =========================== Square
square
pad=0.3 Circlecircle
pad=0.3 LArrowlarrow
pad=0.3 RArrowrarrow
pad=0.3 DArrowdarrow
pad=0.3 Roundround
pad=0.3, rounding_size=None Round4round4
pad=0.3, rounding_size=None Sawtoothsawtooth
pad=0.3, tooth_size=None Roundtoothroundtooth
pad=0.3, tooth_size=None ========== ============== ===========================
An instance of any boxstyle class is an callable object, whose call signature is:
__call__(self, x0, y0, width, height, mutation_size)
and returns a .Path
instance. x0, y0, width and height specify the location and size of the box to be drawn. mutation_scale determines the overall size of the mutation (by which I mean the transformation of the rectangle to the fancy box).
BoxStyle
is a container class which defines several boxstyle classes, which are used for FancyBboxPatch
.
The following pages refer to to this document either explicitly or contain code examples using this.
matplotlib.patches.FancyBboxPatch
matplotlib.patches.ArrowStyle
matplotlib.patches.FancyBboxPatch.__init__
matplotlib.patches.BoxStyle
Hover to see nodes names; edges to Self not shown, Caped at 50 nodes.
Using a canvas is more power efficient and can get hundred of nodes ; but does not allow hyperlinks; , arrows or text (beyond on hover)
SVG is more flexible but power hungry; and does not scale well to 50 + nodes.
All aboves nodes referred to, (or are referred from) current nodes; Edges from Self to other have been omitted (or all nodes would be connected to the central node "self" which is not useful). Nodes are colored by the library they belong to, and scaled with the number of references pointing them