code: def scale_fill_viridis(
      alpha=None,
      begin=None,
      end=None,
      direction=None,
      option=None,
      name=None,
      breaks=None,
      labels=None,
      lablim=None,
      limits=None,
      na_value=None,
      guide=None,
      trans=None,
      format=None,
  ):
      """
      The `viridis` color maps are designed to be perceptually-uniform,
      both in regular form and also when converted to black-and-white.
  
      The `viridis` color scales are suitable for viewers with common forms of colour blindness.
      See also https://bids.github.io/colormap/.
  
  
      Parameters
      ----------
      alpha : float, default=1.0
          Alpha transparency channel. (0 means transparent and 1 means opaque).
      begin : float, default=0.0
          Correspond to a color hue to start at. Accept values between 0 and 1. Should be less than `end`.
      end : float, default=1.0
          Correspond to a color hue to end with. Accept values between 0 and 1. Should be greater than `begin`.
      direction : {1, -1}, default=1
          Set the order of colors in the scale.
          If -1, the order of colors is reversed.
      option : str, default="D" (or "viridis")
          The colormap to use:
              - "magma" (or "A"),
              - "inferno" (or "B")
              - "plasma" (or "C")
              - "viridis" (or "D")
              - "cividis" (or "E")
              - "turbo"
              - "twilight"
  
      name : str
          The name of the scale - used as the axis label or the legend title.
          If None, the default, the name of the scale
          is taken from the first mapping used for that aesthetic.
      breaks : list or dict
          A list of data values specifying the positions of ticks, or a dictionary which maps the tick labels to the breaks values.
      labels : list of str or dict
          A list of labels on ticks, or a dictionary which maps the breaks values to the tick labels.
      lablim : int, default=None
          The maximum label length (in characters) before trimming is applied.
      limits : list
          Continuous scale: a numeric vector of length two providing limits of the scale.
          Discrete scale: a vector specifying the data range for the scale
          and the default order of their display in guides.
      na_value
          Missing values will be replaced with this value.
      guide
          Guide to use for this scale. It can either be a string ('colorbar', 'legend')
          or a call to a guide function (`guide_colorbar()`, `guide_legend()`)
          specifying additional arguments. 'none' will hide the guide.
      trans : {'identity', 'log10', 'log2', 'symlog', 'sqrt', 'reverse'}
          Name of built-in transformation.
      format : str
          Define the format for labels on the scale. The syntax resembles Python's:
  
          - '.2f' -> '12.45'
          - 'Num {}' -> 'Num 12.456789'
          - 'TTL: {.2f}$' -> 'TTL: 12.45$'
  
          For more info see https://lets-plot.org/pages/formats.html.
  
      Returns
      -------
      `FeatureSpec`
          Scale specification.
  
      Notes
      -----
      Can be used for both, continuous and discrete data.
  
      Examples
      --------
      .. jupyter-execute::
          :linenos:
          :emphasize-lines: 6
  
          from lets_plot import *
          LetsPlot.setup_html()
          x = list(range(9))
          ggplot({'x': x}, aes(x='x')) + \\
              geom_tile(aes(fill='x')) + \\
              scale_fill_viridis(option='twilight') + \\
              coord_cartesian() + \\
              ggsize(600, 200)
  
      """
      return scale_viridis(
          "fill",
          alpha=alpha,
          begin=begin,
          end=end,
          direction=direction,
          option=option,
          name=name,
          breaks=breaks,
          labels=labels,
          lablim=lablim,
          limits=limits,
          na_value=na_value,
          guide=guide,
          trans=trans,
          format=format,
      )
  
imports: from .core import FeatureSpec, FeatureSpecArray
  from .util import as_boolean
label_desc: Use image node_id 35 for calling a global function with example usage: scale_fill_viridis(alpha, begin, end, direction, option, name, breaks, labels, lablim, limits, na_value, guide, trans, format) and returns: scale_viridis