class documentation

Abstract class that serves as a base class for anything that draws an igraph.Graph.

Static Method ensure_layout Helper method that ensures that layout is an instance of Layout. If it is not, the method will try to convert it to a Layout according to the following rules:
Method draw Abstract method, must be implemented in derived classes.
Static Method _determine_edge_order Returns the order in which the edge of the given graph have to be drawn, assuming that the relevant keyword arguments (edge_order and edge_order_by) are given in kwds as a dictionary. If neither edge_order...
Static Method _determine_vertex_order Returns the order in which the vertices of the given graph have to be drawn, assuming that the relevant keyword arguments (vertex_order and vertex_order_by) are given in kwds as a dictionary. If neither ...
@staticmethod
def ensure_layout(layout, graph=None):

Helper method that ensures that layout is an instance of Layout. If it is not, the method will try to convert it to a Layout according to the following rules:

  • If layout is a string, it is assumed to be a name of an igraph layout, and it will be passed on to the layout method of the given graph if graph is not None.
  • If layout is None, the layout method of graph will be invoked with no parameters, which will call the default layout algorithm.
  • Otherwise, layout will be passed on to the constructor of Layout. This handles lists of lists, lists of tuples and such.

If layout is already a Layout instance, it will still be copied and a copy will be returned. This is because graph drawers are allowed to transform the layout for their purposes, and we don't want the transformation to propagate back to the caller.

@staticmethod
def _determine_edge_order(graph, kwds):

Returns the order in which the edge of the given graph have to be drawn, assuming that the relevant keyword arguments (edge_order and edge_order_by) are given in kwds as a dictionary. If neither edge_order nor edge_order_by is present in kwds, this function returns None to indicate that the graph drawer is free to choose the most convenient edge ordering.

@staticmethod
def _determine_vertex_order(graph, kwds):

Returns the order in which the vertices of the given graph have to be drawn, assuming that the relevant keyword arguments (vertex_order and vertex_order_by) are given in kwds as a dictionary. If neither vertex_order nor vertex_order_by is present in kwds, this function returns None to indicate that the graph drawer is free to choose the most convenient vertex ordering.