code: def edge(self, tail_name, head_name, label=None, _attributes=None, **attrs):
          
          tail_name = self._quote_edge(tail_name)
          head_name = self._quote_edge(head_name)
          attr_list = self._attr_list(label, attrs, _attributes)
          line = self._edge % (tail_name, head_name, attr_list)
          self.body.append(line)
docs: Create an edge between two nodes.
  
          Args:
              tail_name: Start node identifier.
              head_name: End node identifier.
              label: Caption to be displayed near the edge.
              attrs: Any additional edge attributes (must be strings).