code: def make_swiss_roll(n_samples=100, noise=0.0, random_state=None):
      """Generate a swiss roll dataset.
  
      Read more in the :ref:`User Guide <sample_generators>`.
  
      Parameters
      ----------
      n_samples : int, optional (default=100)
          The number of sample points on the S curve.
  
      noise : float, optional (default=0.0)
          The standard deviation of the gaussian noise.
  
      random_state : int, RandomState instance or None, optional (default=None)
          If int, random_state is the seed used by the random number generator;
          If RandomState instance, random_state is the random number generator;
          If None, the random number generator is the RandomState instance used
          by `np.random`.
  
      Returns
      -------
      X : array of shape [n_samples, 3]
          The points.
  
      t : array of shape [n_samples]
          The univariate position of the sample according to the main dimension
          of the points in the manifold.
  
      Notes
      -----
      The algorithm is from Marsland [1].
  
      References
      ----------
      .. [1] S. Marsland, "Machine Learning: An Algorithmic Perspective",
             Chapter 10, 2009.
             http://seat.massey.ac.nz/personal/s.r.marsland/Code/10/lle.py
      """
      generator = check_random_state(random_state)
  
      t = 1.5 * np.pi * (1 + 2 * generator.rand(1, n_samples))
      x = t * np.cos(t)
      y = 21 * generator.rand(1, n_samples)
      z = t * np.sin(t)
  
      X = np.concatenate((x, y, z))
      X += noise * generator.randn(3, n_samples)
      X = X.T
      t = np.squeeze(t)
  
      return X, t
  
imports: import numbers
  import array
  import numpy
  from scipy import linalg
  import scipy.sparse
  from ..preprocessing import MultiLabelBinarizer
  from ..utils import check_array, check_random_state
  from ..utils import shuffle
  from ..utils.fixes import astype
  from ..utils.random import sample_without_replacement
  from ..externals import six
label_desc: Use image node_id 17 for calling a global function with example usage: make_swiss_roll(n_samples, noise, random_state) and returns: X,  t