class_docstr: GraphicsItem showing a single plot axis with ticks, values, and label.
  Can be configured to fit on any side of a plot, 
  Can automatically synchronize its displayed scale with ViewBox items.
  Ticks can be extended to draw a grid.
  If maxTickLength is negative, ticks point into the plot.
docstr: Explicitly determine the spacing of major and minor ticks. This
  overrides the default behavior of the tickSpacing method, and disables
  the effect of setTicks(). Arguments may be either *major* and *minor*,
  or *levels* which is a list of (spacing, offset) tuples for each
  tick level desired.
  
  If no arguments are given, then the default behavior of tickSpacing
  is enabled.
  
  Examples::
  
      # two levels, all offsets = 0
      axis.setTickSpacing(5, 1)
      # three levels, all offsets = 0
      axis.setTickSpacing(levels=[(3, 0), (1, 0), (0.25, 0)])
      # reset to default
      axis.setTickSpacing()
docstr_tok: ["Explicitly","determine","the","spacing","of","major","and","minor","ticks",".","This","overrides","the","default","behavior","of","the","tickSpacing","method",",","and","disables","the","effect","of","setTicks","(",")",".","Arguments","may","be","either","*","major","*","and","*","minor","*",",","or","*","levels","*","which","is","a","list","of","(","spacing",",","offset",")","tuples","for","each","tick","level","desired",".","If","no","arguments","are","given",",","then","the","default","behavior","of","tickSpacing","is","enabled",".","Examples",":",":","#","two","levels",",","all","offsets","=","0","axis.setTickSpacing","(","5",",","1",")","#","three","levels",",","all","offsets","=","0","axis.setTickSpacing","(","levels=","[","(","3",",","0",")",",","(","1",",","0",")",",","(","0.25",",","0",")","]",")","#","reset","to","default","axis.setTickSpacing","(",")"]
code: def setTickSpacing(self, major=None, minor=None, levels=None):
      """
      Explicitly determine the spacing of major and minor ticks. This
      overrides the default behavior of the tickSpacing method, and disables
      the effect of setTicks(). Arguments may be either *major* and *minor*,
      or *levels* which is a list of (spacing, offset) tuples for each
      tick level desired.
  
      If no arguments are given, then the default behavior of tickSpacing
      is enabled.
  
      Examples::
  
          # two levels, all offsets = 0
          axis.setTickSpacing(5, 1)
          # three levels, all offsets = 0
          axis.setTickSpacing(levels=[(3, 0), (1, 0), (0.25, 0)])
          # reset to default
          axis.setTickSpacing()
      """
  
      if levels is None:
          if major is None:
              levels = None
          else:
              levels = [(major, 0), (minor, 0)]
      self._tickSpacing = levels
      self.picture = None
      self.update()
  
imports: import weakref
  from math import ceil, floor, isfinite, log10, sqrt, frexp, floor
  import numpy
  from ..None import debug
  from ..None import functions
  from ..None import getConfigOption
  from ..Point import Point
  from ..Qt import QtCore, QtGui, QtWidgets
  from .GraphicsWidget import GraphicsWidget
label_desc: Use image node_id 37 for calling the AxisItem obj's underlying member method code with example usage: obj.setTickSpacing(major, minor, levels) without return types