class_docstr: An MPL axis-like object that displays a 2D projection of 3D     volumes with a schematic view of the brain.
  
  Parameters
  ----------
  %(ax)s
  direction : {'x', 'y', 'z'}
      The directions of the view.
  
  coord : :obj:`float`
      The coordinate along the direction of the cut.
  
  plot_abs : :obj:`bool`, default=True
      If set to ``True`` the absolute value of the data will be considered.
class_docstr_tok: ["An","MPL","axis-like","object","that","displays","a","2D","projection","of","3D","volumes","with","a","schematic","view","of","the","brain",".","Parameters","--","--","--","--","--","%","(","ax",")","s","direction",":","{","'","x","'",",","'","y","'",",","'","z","'","}","The","directions","of","the","view",".","coord",":",":","obj",":","`","float","`","The","coordinate","along","the","direction","of","the","cut",".","plot_abs",":",":","obj",":","`","bool","`",",","default=True","If","set","to","``","True","``","the","absolute","value","of","the","data","will","be","considered","."]
docstr: Plot markers.
  
  In the case of 'l' and 'r' directions (for hemispheric projections),
  markers in the coordinate x == 0 are included in both hemispheres.
docstr_tok: ["Plot","markers",".","In","the","case","of","'","l","'","and","'","r","'","directions","(","for","hemispheric","projections",")",",","markers","in","the","coordinate","x","==","0","are","included","in","both","hemispheres","."]
code: def _add_markers(
      self, marker_coords, marker_color, marker_size, **kwargs
  ):
      """Plot markers.
  
      In the case of 'l' and 'r' directions (for hemispheric projections),
      markers in the coordinate x == 0 are included in both hemispheres.
      """
      marker_coords_2d = coords_3d_to_2d(marker_coords, self.direction)
      xdata, ydata = marker_coords_2d.T
  
      # Allow markers only in their respective hemisphere when appropriate
      if self.direction in "lr":
          if not isinstance(marker_color, str) and not isinstance(
              marker_color, np.ndarray
          ):
              marker_color = np.asarray(marker_color)
          relevant_coords = []
          xcoords, ycoords, zcoords = marker_coords.T
          for cidx, xc in enumerate(xcoords):
              if self.direction == "r" and xc >= 0:
                  relevant_coords.append(cidx)
              elif self.direction == "l" and xc <= 0:
                  relevant_coords.append(cidx)
          xdata = xdata[relevant_coords]
          ydata = ydata[relevant_coords]
          # if marker_color is string for example 'red' or 'blue', then
          # we pass marker_color as it is to matplotlib scatter without
          # making any selection in 'l' or 'r' color.
          # More likely that user wants to display all nodes to be in
          # same color.
          if (
              not isinstance(marker_color, str)
              and len(marker_color) != 1
          ):
              marker_color = marker_color[relevant_coords]
  
          if not isinstance(marker_size, numbers.Number):
              marker_size = np.asarray(marker_size)[relevant_coords]
  
      defaults = {"marker": "o", "zorder": 1000}
      for k, v in defaults.items():
          kwargs.setdefault(k, v)
  
      self.ax.scatter(
          xdata, ydata, s=marker_size, c=marker_color, **kwargs
      )
  
imports: import numbers
  import matplotlib.pyplot
  import numpy
  from matplotlib.colors import Normalize
  from matplotlib.font_manager import FontProperties
  from matplotlib.lines import Line2D
  from matplotlib.patches import FancyArrow
  from mpl_toolkits.axes_grid1.anchored_artists import AnchoredSizeBar
  from nilearn._utils.docs import fill_doc
  from nilearn.image import coord_transform
  from nilearn.plotting.glass_brain import plot_brain_schematics
label_desc: Use image node_id 4 for calling the GlassBrainAxes obj's underlying member method code with example usage: obj._add_markers(marker_coords, marker_color, marker_size) without return types