class_docstr: DOT graph for relay IR.
  
  See also :py:class:`tvm.contrib.relay_viz.dot.DotPlotter`
  
  Parameters
  ----------
  name: str
      name of this graph.
  graph_attr: Optional[Dict[str, str]]
      key-value pairs for the graph.
  node_attr: Optional[Dict[str, str]]
      key-value pairs for all nodes.
  edge_attr: Optional[Dict[str, str]]
      key-value pairs for all edges.
  get_node_attr: Optional[Callable[[VizNode], Dict[str, str]]]
      A callable returning attributes for the node.
docstr: Add a node to the underlying graph.
  Nodes in a Relay IR Module are expected to be added in the post-order.
  
  Parameters
  ----------
  viz_node : VizNode
      A `VizNode` instance.
docstr_tok: ["Add","a","node","to","the","underlying","graph",".","Nodes","in","a","Relay","IR","Module","are","expected","to","be","added","in","the","post-order",".","Parameters","--","--","--","--","--","viz_node",":","VizNode","A","`","VizNode","`","instance","."]
code: def node(self, viz_node: VizNode) -> None:
      """Add a node to the underlying graph.
      Nodes in a Relay IR Module are expected to be added in the post-order.
  
      Parameters
      ----------
      viz_node : VizNode
          A `VizNode` instance.
      """
      self._digraph.node(
          viz_node.identity,
          f"{viz_node.type_name}\n{viz_node.detail}",
          **self._get_node_attr(viz_node),
      )
  
file_path: tvm/python/tvm/contrib/relay_viz/dot.py
imports: from typing import Any, Callable, Dict
  from .interface import DefaultVizParser, Plotter, VizEdge, VizGraph, VizNode
label_desc: Use image node_id 2 for calling the DotGraph obj's underlying member method code with example usage: obj.node(viz_node) without return types