# chainer.computational_graph.ComputationalGraph¶

class chainer.computational_graph.ComputationalGraph(nodes, edges, variable_style='default', function_style='default', rankdir='TB', remove_variable=False, show_name=True)[source]

Class that represents computational graph.

Note

We assume that the computational graph is directed and acyclic.

Parameters
• nodes (list) – List of nodes. Each node is either VariableNode object or FunctionNode object.

• edges (list) – List of edges. Each edge consists of pair of nodes.

• variable_style (dict or ‘default’) – Dot node style for variable. If the special value 'default' is specified, the default configuration will be used.

• function_style (dict or default) – Dot node style for function. If the special value 'default' is specified, the default configuration will be used.

• rankdir (str) – Direction of the graph that must be TB (top to bottom), BT (bottom to top), LR (left to right) or RL (right to left).

• remove_variable (bool) – If True, VariableNodes are removed from the resulting computational graph. Only FunctionNodes are shown in the output.

• show_name (bool) – If True, the name attribute of each node is added to the label of the node. Default is True.

Note

The default configuration for variable_style is {'shape': 'octagon', 'fillcolor': '#E0E0E0', 'style': 'filled'} and the default configuration for function_style is {'shape': 'record', 'fillcolor': '#6495ED', 'style': 'filled'}.

Note

The default behavior of ComputationalGraph has been changed from v1.23.0, so that it ouputs the richest representation of a graph as default, namely, styles are set and names of functions and variables are shown. To reproduce the same result as previous versions (<= v1.22.0), please specify variable_style=None, function_style=None, and show_name=False explicitly.

Methods

dump(format='dot')[source]

Dumps graph as a text.

Parameters
• format (str) – The graph language name of the output.

• it must be 'dot'. (Currently,) –

Returns

The graph in specified format.

Return type

str

__eq__()

Return self==value.

__ne__()

Return self!=value.

__lt__()

Return self<value.

__le__()

Return self<=value.

__gt__()

Return self>value.

__ge__()

Return self>=value.