class_docstr: Assign coordinates to the nodes randomly.
  
  Accepts an edges argument for consistency with other layout algorithms,
  but ignores it.
class_docstr_tok: ["Assign","coordinates","to","the","nodes","randomly",".","Accepts","an","edges","argument","for","consistency","with","other","layout","algorithms",",","but","ignores","it","."]
code: def __call__(self, nodes, edges=None, **params):
      p = param.ParamOverrides(self, params)
  
      np.random.seed(p.seed)
  
      df = nodes.copy()
      points = np.asarray(np.random.random((len(df), 2)))
  
      df[p.x] = points[:, 0]
      df[p.y] = points[:, 1]
  
      return df
  
file_path: datashader/datashader/layout.py
imports: from __future__ import annotations
  import numpy
  import param
  import scipy.sparse
label_desc: Use image node_id 1 for calling the random_layout obj's underlying member method code with example usage: obj.__call__(nodes, edges) and returns: df