docs: def create(self, layout, format, **args):
          '''
          API:
              create(self, layout, format, **args)
          Description:
              Returns postscript representation of graph.
          Input:
              layout: Dot layout for generating graph image.
              format: Image format, all format supported by Dot are wellcome.
          Return:
              Returns postscript representation of graph.
          '''
          tmp_fd, tmp_name = tempfile.mkstemp()
          tmp_file = os.fdopen(tmp_fd, 'w')
          tmp_file.write(self.to_string())
          # ne need for os.close(tmp_fd), since we have tmp_file.close(tmp_file)
          tmp_file.close()
          tmp_dir = os.path.dirname(tmp_name)
          try:
              p = subprocess.Popen([layout, '-T'+format, tmp_name],
                                   cwd=tmp_dir,
                                   stdout=subprocess.PIPE,
                                   stderr=subprocess.PIPE)
          except OSError:
              print('''Graphviz executable not found.
  Graphviz must be installed and in your search path.
  Please visit http://www.graphviz.org/ for information on installation.
  After installation, ensure that the PATH variable is properly set.''')
              return
          stdout_output, stderr_output = p.communicate()
          if p.returncode != 0 :
              raise Exception('Graphviz executable terminated with status: %d. stderr follows: %s' % (
                      p.returncode, stderr_output))
          elif stderr_output:
              print(stderr_output)
          return stdout_output