Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TAxis Class Reference

Class to manage histogram axis.

This class manages histogram axis. It is referenced by TH1 and TGraph. To make a graphical representation of an histogram axis, this class references the TGaxis class. TAxis supports axis with fixed or variable bin sizes. Labels may be associated to individual bins. See examples of various axis representations drawn by class TGaxis.

Definition at line 31 of file TAxis.h.

Public Types

enum  EStatusBits {
  kDecimals = (1ULL << ( 7 )) , kTickPlus = (1ULL << ( 9 )) , kTickMinus = (1ULL << ( 10 )) , kAxisRange = (1ULL << ( 11 )) ,
  kCenterTitle = (1ULL << ( 12 )) , kCenterLabels = (1ULL << ( 14 )) , kRotateTitle = (1ULL << ( 15 )) , kPalette = (1ULL << ( 16 )) ,
  kNoExponent = (1ULL << ( 17 )) , kLabelsHori = (1ULL << ( 18 )) , kLabelsVert = (1ULL << ( 19 )) , kLabelsDown = (1ULL << ( 20 )) ,
  kLabelsUp = (1ULL << ( 21 )) , kIsInteger = (1ULL << ( 22 )) , kMoreLogLabels = (1ULL << ( 23 ))
}
 TAxis status bits. More...
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) }
 
enum  EStatusBits {
  kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) ,
  kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 ))
}
 

Public Member Functions

 TAxis ()
 Default constructor.
 
 TAxis (const TAxis &axis)
 Copy constructor.
 
 TAxis (Int_t nbins, const Double_t *xbins)
 Axis constructor for variable bin size.
 
 TAxis (Int_t nbins, Double_t xmin, Double_t xmax)
 Axis constructor for axis with fix bin size.
 
 ~TAxis () override
 Destructor.
 
Bool_t CanBeAlphanumeric ()
 
Bool_t CanExtend () const
 
void CenterLabels (Bool_t center=kTRUE)
 Center axis labels.
 
void CenterTitle (Bool_t center=kTRUE)
 Center axis title.
 
void ChangeLabel (Int_t labNum=0, Double_t labAngle=-1., Double_t labSize=-1., Int_t labAlign=-1, Int_t labColor=-1, Int_t labFont=-1, const TString &labText="")
 Define new text attributes for the label number "labNum".
 
void ChangeLabelByValue (Double_t labValue, Double_t labAngle=-1., Double_t labSize=-1., Int_t labAlign=-1, Int_t labColor=-1, Int_t labFont=-1, const TString &labText="")
 Define new text attributes for the label value "labValue".
 
const char * ChooseTimeFormat (Double_t axislength=0)
 Choose a reasonable time format from the coordinates in the active pad and the number of divisions in this axis If orientation = "X", the horizontal axis of the pad will be used for ref.
 
void Copy (TObject &axis) const override
 Copy axis structure to another axis.
 
void Delete (Option_t *="") override
 Delete this object.
 
Int_t DistancetoPrimitive (Int_t px, Int_t py) override
 Compute distance from point px,py to an axis.
 
TObjectDrawClone (Option_t *="") const override
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
 
void ExecuteEvent (Int_t event, Int_t px, Int_t py) override
 Execute action corresponding to one event.
 
virtual Int_t FindBin (const char *label)
 Find bin number with label.
 
virtual Int_t FindBin (Double_t x)
 Find bin number corresponding to abscissa x.
 
virtual Int_t FindBin (Double_t x) const
 
virtual Int_t FindFixBin (const char *label) const
 Find bin number with label.
 
virtual Int_t FindFixBin (Double_t x) const
 Find bin number corresponding to abscissa x.
 
virtual Double_t GetBinCenter (Int_t bin) const
 Return center of bin.
 
virtual Double_t GetBinCenterLog (Int_t bin) const
 Return center of bin in log With a log-equidistant binning for a bin with low and up edges, the mean is : 0.5*(ln low + ln up) i.e.
 
const char * GetBinLabel (Int_t bin) const
 Return label for bin.
 
virtual Double_t GetBinLowEdge (Int_t bin) const
 Return low edge of bin.
 
virtual Double_t GetBinUpEdge (Int_t bin) const
 Return up edge of bin.
 
virtual Double_t GetBinWidth (Int_t bin) const
 Return bin width.
 
virtual void GetCenter (Double_t *center) const
 Return an array with the center of all bins.
 
Bool_t GetCenterLabels () const
 
Bool_t GetCenterTitle () const
 
Bool_t GetDecimals () const
 
Int_t GetFirst () const
 Return first bin on the axis i.e.
 
THashListGetLabels () const
 
Int_t GetLast () const
 Return last bin on the axis i.e.
 
virtual void GetLowEdge (Double_t *edge) const
 Return an array with the low edge of all bins.
 
TListGetModifiedLabels () const
 
Bool_t GetMoreLogLabels () const
 
Int_t GetNbins () const
 
Int_t GetNlabels () const
 Return the number of axis labels.
 
Bool_t GetNoExponent () const
 
virtual TObjectGetParent () const
 
Bool_t GetRotateTitle () const
 
virtual const char * GetTicks () const
 Return the ticks option (see SetTicks)
 
virtual Bool_t GetTimeDisplay () const
 
virtual const char * GetTimeFormat () const
 
virtual const char * GetTimeFormatOnly () const
 Return only the time format from the string fTimeFormat.
 
UInt_t GetTimeOffset ()
 Return the time offset in GMT.
 
const char * GetTitle () const override
 Returns title of object.
 
const TArrayDGetXbins () const
 
Double_t GetXmax () const
 
Double_t GetXmin () const
 
virtual void ImportAttributes (const TAxis *axis)
 Copy axis attributes to this.
 
TClassIsA () const override
 
Bool_t IsAlphanumeric () const
 
Bool_t IsVariableBinSize () const
 
virtual void LabelsOption (Option_t *option="h")
 Set option(s) to draw axis with labels option can be:
 
TAxisoperator= (const TAxis &)
 Assignment operator.
 
void RotateTitle (Bool_t rotate=kTRUE)
 Rotate title by 180 degrees.
 
void SaveAttributes (std::ostream &out, const char *name, const char *subname) override
 Save axis attributes as C++ statement(s) on output stream out.
 
virtual void Set (Int_t nbins, const Double_t *xbins)
 Initialize axis with variable bins.
 
virtual void Set (Int_t nbins, const Float_t *xbins)
 Initialize axis with variable bins.
 
virtual void Set (Int_t nbins, Double_t xmin, Double_t xmax)
 Initialize axis with fix bins.
 
void SetAlphanumeric (Bool_t alphanumeric=kTRUE)
 Set axis alphanumeric.
 
virtual void SetBinLabel (Int_t bin, const char *label)
 Set label for bin.
 
void SetCanExtend (Bool_t canExtend)
 
void SetDecimals (Bool_t dot=kTRUE)
 Sets the decimals flag By default, blank characters are stripped, and then the label is correctly aligned.
 
virtual void SetDefaults ()
 Set axis default values (from TStyle)
 
void SetDrawOption (Option_t *="") override
 Set drawing option for object.
 
virtual void SetLimits (Double_t xmin, Double_t xmax)
 
void SetMoreLogLabels (Bool_t more=kTRUE)
 Set the kMoreLogLabels bit flag When this option is selected more labels are drawn when in log scale and there is a small number of decades (<3).
 
void SetNoAlphanumeric (Bool_t noalpha=kTRUE)
 
void SetNoExponent (Bool_t noExponent=kTRUE)
 Set the NoExponent flag By default, an exponent of the form 10^N is used when the label value are either all very small or very large.
 
virtual void SetParent (TObject *obj)
 
virtual void SetRange (Int_t first=0, Int_t last=0)
 Set the viewing range for the axis using bin numbers.
 
virtual void SetRangeUser (Double_t ufirst, Double_t ulast)
 Set the viewing range for the axis from ufirst to ulast (in user coordinates, that is, the "natural" axis coordinates).
 
virtual void SetTicks (Option_t *option="+")
 Set ticks orientation.
 
virtual void SetTimeDisplay (Int_t value)
 
virtual void SetTimeFormat (const char *format="")
 Change the format used for time plotting.
 
virtual void SetTimeOffset (Double_t toffset, Option_t *option="local")
 Change the time offset If option = "gmt", set display mode to GMT.
 
void Streamer (TBuffer &) override
 Stream an object of class TAxis.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void UnZoom ()
 Reset first & last bin to the full range.
 
virtual void ZoomOut (Double_t factor=0, Double_t offset=0)
 Zoom out by a factor of 'factor' (default =2) uses previous zoom factor by default Keep center defined by 'offset' fixed ie.
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor.
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 TNamed destructor.
 
void Clear (Option_t *option="") override
 Set name and title to empty strings ("").
 
TObjectClone (const char *newname="") const override
 Make a clone of an object using the Streamer facility.
 
Int_t Compare (const TObject *obj) const override
 Compare two TNamed objects.
 
void Copy (TObject &named) const override
 Copy this to obj.
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer.
 
const char * GetName () const override
 Returns name of object.
 
const char * GetTitle () const override
 Returns title of object.
 
ULong_t Hash () const override
 Return hash value for this object.
 
TClassIsA () const override
 
Bool_t IsSortable () const override
 
void ls (Option_t *option="") const override
 List TNamed name and title.
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator.
 
void Print (Option_t *option="") const override
 Print TNamed name and title.
 
virtual void SetName (const char *name)
 Set the name of the TNamed.
 
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title).
 
virtual void SetTitle (const char *title="")
 Set the title of the TNamed.
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject.
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs.
 
virtual void Dump () const
 Dump contents of object on stdout.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual const char * GetIconName () const
 Returns mime type name of object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out.
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory).
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification (the base implementation is no-op).
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *vp)
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename.
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out".
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.
 
- Public Member Functions inherited from TAttAxis
 TAttAxis ()
 
virtual ~TAttAxis ()
 Destructor.
 
void Copy (TAttAxis &attaxis) const
 Copy of the object.
 
virtual Color_t GetAxisColor () const
 
virtual Color_t GetLabelColor () const
 
virtual Style_t GetLabelFont () const
 
virtual Float_t GetLabelOffset () const
 
virtual Float_t GetLabelSize () const
 
virtual Int_t GetMaxDigits () const
 
virtual Int_t GetNdivisions () const
 
virtual Float_t GetTickLength () const
 
virtual Color_t GetTitleColor () const
 
virtual Style_t GetTitleFont () const
 
virtual Float_t GetTitleOffset () const
 
virtual Float_t GetTitleSize () const
 
virtual void ResetAttAxis (Option_t *option="")
 Reset axis attributes.
 
virtual void SetAxisColor (Color_t color=1, Float_t alpha=1.)
 Set color of the line axis and tick marks.
 
virtual void SetLabelColor (Color_t color=1, Float_t alpha=1.)
 Set color of labels.
 
virtual void SetLabelFont (Style_t font=62)
 Set labels' font.
 
virtual void SetLabelOffset (Float_t offset=0.005)
 Set distance between the axis and the labels.
 
virtual void SetLabelSize (Float_t size=0.04)
 Set size of axis labels.
 
virtual void SetMaxDigits (Int_t maxDigits=5)
 This function sets the maximum number of digits permitted for the axis labels above which the notation with 10^N is used.
 
virtual void SetNdivisions (Int_t n1, Int_t n2, Int_t n3, Bool_t optim=kTRUE)
 Set the number of divisions for this axis using one int per division level.
 
virtual void SetNdivisions (Int_t n=510, Bool_t optim=kTRUE)
 Set the number of divisions for this axis.
 
virtual void SetTickLength (Float_t length=0.03)
 Set tick mark length.
 
virtual void SetTickSize (Float_t size=0.03)
 
virtual void SetTitleColor (Color_t color=1)
 Set color of axis title.
 
virtual void SetTitleFont (Style_t font=62)
 Set the title font.
 
virtual void SetTitleOffset (Float_t offset=1)
 Set distance between the axis and the axis title.
 
virtual void SetTitleSize (Float_t size=0.04)
 Set size of axis title.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TNamed
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Static Public Member Functions inherited from TAttAxis
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 

Private Types

enum  { kAlphanumeric = (1ULL << ( 0 )) , kCanExtend = (1ULL << ( 1 )) , kNotAlpha = (1ULL << ( 2 )) }
 TAxis extra status bits (stored in fBits2) More...
 

Private Member Functions

TAxisModLabFindModLab (Int_t num, Double_t v=0., Double_t eps=0.) const
 Search for axis modifier by index or value.
 
Bool_t HasBinWithoutLabel () const
 This helper function checks if there is a bin without a label if all bins have labels, the axis can / will become alphanumeric.
 

Private Attributes

UShort_t fBits2
 Second bit status word.
 
Int_t fFirst
 First bin to display.
 
THashListfLabels
 List of labels.
 
Int_t fLast
 Last bin to display.
 
TListfModLabs
 List of modified labels.
 
Int_t fNbins
 Number of bins.
 
TObjectfParent
 ! Object owning this axis
 
Bool_t fTimeDisplay
 On/off displaying time values instead of numerics.
 
TString fTimeFormat
 Date&time format, ex: 09/12/99 12:34:00.
 
TArrayD fXbins
 Bin edges array in X.
 
Double_t fXmax
 Upper edge of last bin.
 
Double_t fXmin
 Low edge of first bin.
 

Additional Inherited Members

- Protected Types inherited from TObject
enum  { kOnlyPrepStep = (1ULL << ( 3 )) }
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
 
void MakeZombie ()
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TAttAxis
Color_t fAxisColor
 Color of the line axis.
 
Color_t fLabelColor
 Color of labels.
 
Style_t fLabelFont
 Font for labels.
 
Float_t fLabelOffset
 Offset of labels.
 
Float_t fLabelSize
 Size of labels.
 
Int_t fNdivisions
 Number of divisions(10000*n3 + 100*n2 + n1)
 
Float_t fTickLength
 Length of tick marks.
 
Color_t fTitleColor
 Color of axis title.
 
Style_t fTitleFont
 Font for axis title.
 
Float_t fTitleOffset
 Offset of axis title.
 
Float_t fTitleSize
 Size of axis title.
 

#include <TAxis.h>

Inheritance diagram for TAxis:
[legend]

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
private

TAxis extra status bits (stored in fBits2)

Enumerator
kAlphanumeric 

Axis is alphanumeric.

kCanExtend 

Axis can be extended.

kNotAlpha 

Axis is forced to be not alphanumeric.

Definition at line 48 of file TAxis.h.

◆ EStatusBits

TAxis status bits.

Enumerator
kDecimals 
kTickPlus 
kTickMinus 
kAxisRange 
kCenterTitle 
kCenterLabels 

Bit 13 is used by TObject.

kRotateTitle 
kPalette 
kNoExponent 
kLabelsHori 
kLabelsVert 
kLabelsDown 
kLabelsUp 
kIsInteger 
kMoreLogLabels 

Definition at line 61 of file TAxis.h.

Constructor & Destructor Documentation

◆ TAxis() [1/4]

TAxis::TAxis ( )

Default constructor.

Definition at line 50 of file TAxis.cxx.

◆ TAxis() [2/4]

TAxis::TAxis ( Int_t  nbins,
Double_t  xmin,
Double_t  xmax 
)

Axis constructor for axis with fix bin size.

Definition at line 67 of file TAxis.cxx.

◆ TAxis() [3/4]

TAxis::TAxis ( Int_t  nbins,
const Double_t xbins 
)

Axis constructor for variable bin size.

Definition at line 78 of file TAxis.cxx.

◆ TAxis() [4/4]

TAxis::TAxis ( const TAxis axis)

Copy constructor.

Definition at line 106 of file TAxis.cxx.

◆ ~TAxis()

TAxis::~TAxis ( )
override

Destructor.

Definition at line 89 of file TAxis.cxx.

Member Function Documentation

◆ CanBeAlphanumeric()

Bool_t TAxis::CanBeAlphanumeric ( )
inline

Definition at line 87 of file TAxis.h.

◆ CanExtend()

Bool_t TAxis::CanExtend ( ) const
inline

Definition at line 86 of file TAxis.h.

◆ CenterLabels()

void TAxis::CenterLabels ( Bool_t  center = kTRUE)
inline

Center axis labels.

If center = kTRUE axis labels will be centered (horizontal axes only) on the bin center. Default is to center on the primary tick marks This option does not make sense if there are more bins than tick marks

Definition at line 185 of file TAxis.h.

◆ CenterTitle()

void TAxis::CenterTitle ( Bool_t  center = kTRUE)
inline

Center axis title.

If center = kTRUE axis title will be centered default is right adjusted

Definition at line 194 of file TAxis.h.

◆ ChangeLabel()

void TAxis::ChangeLabel ( Int_t  labNum = 0,
Double_t  labAngle = -1.,
Double_t  labSize = -1.,
Int_t  labAlign = -1,
Int_t  labColor = -1,
Int_t  labFont = -1,
const TString labText = "" 
)

Define new text attributes for the label number "labNum".

It allows to do a fine tuning of the labels. All the attributes can be changed, even the label text itself.

Parameters
[in]labNumNumber of the label to be changed, negative numbers start from the end
[in]labAngleNew angle value
[in]labSizeNew size (0 erase the label)
[in]labAlignNew alignment value
[in]labColorNew label color
[in]labFontNew label font
[in]labTextNew label text

Notes:

  • If an attribute should not be changed just give the value "-1".
  • If labnum=0 the list of modified labels is reset.
  • To erase a label set labSize to 0.
  • If labText is not specified or is an empty string, the text label is not changed.
  • To retrieve the number of axis labels use TAxis::GetNlabels.

Definition at line 961 of file TAxis.cxx.

◆ ChangeLabelByValue()

void TAxis::ChangeLabelByValue ( Double_t  labValue,
Double_t  labAngle = -1.,
Double_t  labSize = -1.,
Int_t  labAlign = -1,
Int_t  labColor = -1,
Int_t  labFont = -1,
const TString labText = "" 
)

Define new text attributes for the label value "labValue".

It allows to do a fine tuning of the labels. All the attributes can be changed, even the label text itself.

Parameters
[in]labValueAxis value to be changed
[in]labAngleNew angle value
[in]labSizeNew size (0 erase the label)
[in]labAlignNew alignment value
[in]labColorNew label color
[in]labFontNew label font
[in]labTextNew label text

Notes:

  • If an attribute should not be changed just give the value "-1".
  • If labnum=0 the list of modified labels is reset.
  • To erase a label set labSize to 0.
  • If labText is not specified or is an empty string, the text label is not changed.
  • To retrieve the number of axis labels use TAxis::GetNlabels.

Definition at line 1009 of file TAxis.cxx.

◆ ChooseTimeFormat()

const char * TAxis::ChooseTimeFormat ( Double_t  axislength = 0)

Choose a reasonable time format from the coordinates in the active pad and the number of divisions in this axis If orientation = "X", the horizontal axis of the pad will be used for ref.

If orientation = "Y", the vertical axis of the pad will be used for ref.

Definition at line 132 of file TAxis.cxx.

◆ Class()

static TClass * TAxis::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TAxis::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TAxis::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 177 of file TAxis.h.

◆ Copy()

void TAxis::Copy ( TObject axis) const
overridevirtual

Copy axis structure to another axis.

Reimplemented from TObject.

Definition at line 216 of file TAxis.cxx.

◆ DeclFileName()

static const char * TAxis::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 177 of file TAxis.h.

◆ Delete()

void TAxis::Delete ( Option_t option = "")
inlineoverridevirtual

Delete this object.

Typically called as a command via the interpreter. Normally use "delete" operator when object has been allocated on the heap.

Reimplemented from TObject.

Definition at line 102 of file TAxis.h.

◆ DistancetoPrimitive()

Int_t TAxis::DistancetoPrimitive ( Int_t  px,
Int_t  py 
)
overridevirtual

Compute distance from point px,py to an axis.

Reimplemented from TObject.

Definition at line 265 of file TAxis.cxx.

◆ DrawClone()

TObject * TAxis::DrawClone ( Option_t option = "") const
inlineoverridevirtual

Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).

If pad was not selected - gPad will be used.

Reimplemented from TObject.

Definition at line 104 of file TAxis.h.

◆ ExecuteEvent()

void TAxis::ExecuteEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
overridevirtual

Execute action corresponding to one event.

This member function is called when an axis is clicked with the locator. The axis range is set between the position where the mouse is pressed and the position where it is released. If the mouse position is outside the current axis range when it is released the axis is unzoomed with the corresponding proportions. Note that the mouse does not need to be in the pad or even canvas when it is released.

Reimplemented from TObject.

Definition at line 281 of file TAxis.cxx.

◆ FindBin() [1/3]

Int_t TAxis::FindBin ( const char *  label)
virtual

Find bin number with label.

If the List of labels does not exist create it and make the axis alphanumeric If one wants just to add a single label- just call TAxis::SetBinLabel If label is not in the list of labels do the following depending on the bit TAxis::kCanExtend; of the axis.

  • if the bit is set add the new label and if the number of labels exceeds the number of bins, double the number of bins via TH1::LabelsInflate
  • if the bit is not set and the histogram has labels in each bin set the bit automatically and consider the histogram as alphanumeric if histogram has only some bins with labels then the histogram is not consider alphanumeric and return -1

-1 is returned only when the Axis has no parent histogram

Definition at line 338 of file TAxis.cxx.

◆ FindBin() [2/3]

Int_t TAxis::FindBin ( Double_t  x)
virtual

Find bin number corresponding to abscissa x.

NOTE: this method does not work with alphanumeric bins !!!

If x is underflow or overflow, attempt to extend the axis if TAxis::kCanExtend is true. Otherwise, return 0 or fNbins+1.

Definition at line 293 of file TAxis.cxx.

◆ FindBin() [3/3]

virtual Int_t TAxis::FindBin ( Double_t  x) const
inlinevirtual

Definition at line 107 of file TAxis.h.

◆ FindFixBin() [1/2]

Int_t TAxis::FindFixBin ( const char *  label) const
virtual

Find bin number with label.

If the List of labels does not exist or the label does not exist just return -1 . Do not attempt to modify the axis. This is different than FindBin

Reimplemented in Axis2.

Definition at line 401 of file TAxis.cxx.

◆ FindFixBin() [2/2]

Int_t TAxis::FindFixBin ( Double_t  x) const
virtual

Find bin number corresponding to abscissa x.

Identical to TAxis::FindBin except that if x is an underflow/overflow no attempt is made to extend the axis.

Reimplemented in Axis2.

Definition at line 419 of file TAxis.cxx.

◆ FindModLab()

TAxisModLab * TAxis::FindModLab ( Int_t  num,
Double_t  v = 0.,
Double_t  eps = 0. 
) const
private

Search for axis modifier by index or value.

Definition at line 922 of file TAxis.cxx.

◆ GetBinCenter()

Double_t TAxis::GetBinCenter ( Int_t  bin) const
virtual

Return center of bin.

Definition at line 478 of file TAxis.cxx.

◆ GetBinCenterLog()

Double_t TAxis::GetBinCenterLog ( Int_t  bin) const
virtual

Return center of bin in log With a log-equidistant binning for a bin with low and up edges, the mean is : 0.5*(ln low + ln up) i.e.

sqrt(low*up) in logx (e.g. sqrt(10^0*10^2) = 10). Imagine a bin with low=1 and up=100 :

  • the center in lin is (100-1)/2=50.5
  • the center in log would be sqrt(1*100)=10 (!=log(50.5))

NB: if the low edge of the bin is negative, the function returns the bin center as computed by TAxis::GetBinCenter

Definition at line 501 of file TAxis.cxx.

◆ GetBinLabel()

const char * TAxis::GetBinLabel ( Int_t  bin) const

Return label for bin.

Definition at line 440 of file TAxis.cxx.

◆ GetBinLowEdge()

Double_t TAxis::GetBinLowEdge ( Int_t  bin) const
virtual

Return low edge of bin.

Reimplemented in Axis2.

Definition at line 518 of file TAxis.cxx.

◆ GetBinUpEdge()

Double_t TAxis::GetBinUpEdge ( Int_t  bin) const
virtual

Return up edge of bin.

Reimplemented in Axis2.

Definition at line 528 of file TAxis.cxx.

◆ GetBinWidth()

Double_t TAxis::GetBinWidth ( Int_t  bin) const
virtual

Return bin width.

Reimplemented in Axis2.

Definition at line 540 of file TAxis.cxx.

◆ GetCenter()

void TAxis::GetCenter ( Double_t center) const
virtual

Return an array with the center of all bins.

Definition at line 553 of file TAxis.cxx.

◆ GetCenterLabels()

Bool_t TAxis::GetCenterLabels ( ) const
inline

Definition at line 118 of file TAxis.h.

◆ GetCenterTitle()

Bool_t TAxis::GetCenterTitle ( ) const
inline

Definition at line 119 of file TAxis.h.

◆ GetDecimals()

Bool_t TAxis::GetDecimals ( ) const
inline

Definition at line 120 of file TAxis.h.

◆ GetFirst()

Int_t TAxis::GetFirst ( ) const

Return first bin on the axis i.e.

1 if no range defined NOTE: in some cases a zero is returned (see TAxis::SetRange)

Definition at line 458 of file TAxis.cxx.

◆ GetLabels()

THashList * TAxis::GetLabels ( ) const
inline

Definition at line 121 of file TAxis.h.

◆ GetLast()

Int_t TAxis::GetLast ( ) const

Return last bin on the axis i.e.

fNbins if no range defined NOTE: in some cases a zero is returned (see TAxis::SetRange)

Definition at line 469 of file TAxis.cxx.

◆ GetLowEdge()

void TAxis::GetLowEdge ( Double_t edge) const
virtual

Return an array with the low edge of all bins.

Definition at line 562 of file TAxis.cxx.

◆ GetModifiedLabels()

TList * TAxis::GetModifiedLabels ( ) const
inline

Definition at line 122 of file TAxis.h.

◆ GetMoreLogLabels()

Bool_t TAxis::GetMoreLogLabels ( ) const
inline

Definition at line 124 of file TAxis.h.

◆ GetNbins()

Int_t TAxis::GetNbins ( ) const
inline

Definition at line 125 of file TAxis.h.

◆ GetNlabels()

Int_t TAxis::GetNlabels ( ) const

Return the number of axis labels.

It is sometimes useful to know the number of labels on an axis. For instance when changing the labels with TAxis::ChangeLabel. The number of labels is equal to the_number_of_divisions + 1. By default the number of divisions is optimised to show a coherent labeling of the main tick marks. After optimisation the real number of divisions will be smaller or equal to number of divisions requested. In order to turn off the labeling optimization, it is enough to give a negative number of divisions to TAttAxis::SetNdivisions. The absolute value of this number will be use as the exact number of divisions. This method takes the two cases (optimised or not) into account.

Definition at line 581 of file TAxis.cxx.

◆ GetNoExponent()

Bool_t TAxis::GetNoExponent ( ) const
inline

Definition at line 127 of file TAxis.h.

◆ GetParent()

virtual TObject * TAxis::GetParent ( ) const
inlinevirtual

Definition at line 128 of file TAxis.h.

◆ GetRotateTitle()

Bool_t TAxis::GetRotateTitle ( ) const
inline

Definition at line 129 of file TAxis.h.

◆ GetTicks()

const char * TAxis::GetTicks ( ) const
virtual

Return the ticks option (see SetTicks)

Definition at line 634 of file TAxis.cxx.

◆ GetTimeDisplay()

virtual Bool_t TAxis::GetTimeDisplay ( ) const
inlinevirtual

Definition at line 131 of file TAxis.h.

◆ GetTimeFormat()

virtual const char * TAxis::GetTimeFormat ( ) const
inlinevirtual

Definition at line 132 of file TAxis.h.

◆ GetTimeFormatOnly()

const char * TAxis::GetTimeFormatOnly ( ) const
virtual

Return only the time format from the string fTimeFormat.

Definition at line 599 of file TAxis.cxx.

◆ GetTimeOffset()

UInt_t TAxis::GetTimeOffset ( )

Return the time offset in GMT.

Definition at line 614 of file TAxis.cxx.

◆ GetTitle()

const char * TAxis::GetTitle ( ) const
inlineoverridevirtual

Returns title of object.

This default method returns the class title (i.e. description). Classes that give objects a title should override this method.

Reimplemented from TObject.

Definition at line 135 of file TAxis.h.

◆ GetXbins()

const TArrayD * TAxis::GetXbins ( ) const
inline

Definition at line 136 of file TAxis.h.

◆ GetXmax()

Double_t TAxis::GetXmax ( ) const
inline

Definition at line 140 of file TAxis.h.

◆ GetXmin()

Double_t TAxis::GetXmin ( ) const
inline

Definition at line 139 of file TAxis.h.

◆ HasBinWithoutLabel()

Bool_t TAxis::HasBinWithoutLabel ( ) const
private

This helper function checks if there is a bin without a label if all bins have labels, the axis can / will become alphanumeric.

Definition at line 646 of file TAxis.cxx.

◆ ImportAttributes()

void TAxis::ImportAttributes ( const TAxis axis)
virtual

Copy axis attributes to this.

Definition at line 680 of file TAxis.cxx.

◆ IsA()

TClass * TAxis::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TObject.

Definition at line 177 of file TAxis.h.

◆ IsAlphanumeric()

Bool_t TAxis::IsAlphanumeric ( ) const
inline

Definition at line 88 of file TAxis.h.

◆ IsVariableBinSize()

Bool_t TAxis::IsVariableBinSize ( ) const
inline

Definition at line 142 of file TAxis.h.

◆ LabelsOption()

void TAxis::LabelsOption ( Option_t option = "h")
virtual

Set option(s) to draw axis with labels option can be:

  • "a" sort by alphabetic order
  • ">" sort by decreasing values
  • "<" sort by increasing values
  • "h" draw labels horizontal
  • "v" draw labels vertical
  • "u" draw labels up (end of label right adjusted)
  • "d" draw labels down (start of label left adjusted)

Definition at line 662 of file TAxis.cxx.

◆ operator=()

TAxis & TAxis::operator= ( const TAxis axis)

Assignment operator.

Definition at line 118 of file TAxis.cxx.

◆ RotateTitle()

void TAxis::RotateTitle ( Bool_t  rotate = kTRUE)
inline

Rotate title by 180 degrees.

By default the title is drawn right adjusted. If rotate is TRUE, the title is left adjusted at the end of the axis and rotated by 180 degrees

Definition at line 203 of file TAxis.h.

◆ SaveAttributes()

void TAxis::SaveAttributes ( std::ostream &  out,
const char *  name,
const char *  subname 
)
overridevirtual

Save axis attributes as C++ statement(s) on output stream out.

Reimplemented from TAttAxis.

Definition at line 710 of file TAxis.cxx.

◆ Set() [1/3]

void TAxis::Set ( Int_t  nbins,
const Double_t xbins 
)
virtual

Initialize axis with variable bins.

Reimplemented in Axis2.

Definition at line 824 of file TAxis.cxx.

◆ Set() [2/3]

void TAxis::Set ( Int_t  nbins,
const Float_t xbins 
)
virtual

Initialize axis with variable bins.

Reimplemented in Axis2.

Definition at line 806 of file TAxis.cxx.

◆ Set() [3/3]

void TAxis::Set ( Int_t  nbins,
Double_t  xmin,
Double_t  xmax 
)
virtual

Initialize axis with fix bins.

Reimplemented in Axis2.

Definition at line 794 of file TAxis.cxx.

◆ SetAlphanumeric()

void TAxis::SetAlphanumeric ( Bool_t  alphanumeric = kTRUE)

Set axis alphanumeric.

Definition at line 842 of file TAxis.cxx.

◆ SetBinLabel()

void TAxis::SetBinLabel ( Int_t  bin,
const char *  label 
)
virtual

Set label for bin.

If no label list exists, it is created. If all the bins have labels, the axis becomes alphanumeric and extendable. New labels will not be added with the Fill method but will end-up in the underflow bin. See documentation of TAxis::FindBin(const char*)

Definition at line 886 of file TAxis.cxx.

◆ SetCanExtend()

void TAxis::SetCanExtend ( Bool_t  canExtend)
inline

Definition at line 90 of file TAxis.h.

◆ SetDecimals()

void TAxis::SetDecimals ( Bool_t  dot = kTRUE)
inline

Sets the decimals flag By default, blank characters are stripped, and then the label is correctly aligned.

If the dot is the last character of the string, it is also stripped, unless this option is specified.

Definition at line 213 of file TAxis.h.

◆ SetDefaults()

void TAxis::SetDefaults ( )
virtual

Set axis default values (from TStyle)

Definition at line 866 of file TAxis.cxx.

◆ SetDrawOption()

void TAxis::SetDrawOption ( Option_t option = "")
inlineoverridevirtual

Set drawing option for object.

This option only affects the drawing style and is stored in the option field of the TObjOptLink supporting a TPad's primitive list (TList). Note that it does not make sense to call object.SetDrawOption(option) before having called object.Draw().

Reimplemented from TObject.

Definition at line 155 of file TAxis.h.

◆ SetLimits()

virtual void TAxis::SetLimits ( Double_t  xmin,
Double_t  xmax 
)
inlinevirtual

Definition at line 164 of file TAxis.h.

◆ SetMoreLogLabels()

void TAxis::SetMoreLogLabels ( Bool_t  more = kTRUE)
inline

Set the kMoreLogLabels bit flag When this option is selected more labels are drawn when in log scale and there is a small number of decades (<3).

The flag (in fBits) is passed to the drawing function TGaxis::PaintAxis

Definition at line 223 of file TAxis.h.

◆ SetNoAlphanumeric()

void TAxis::SetNoAlphanumeric ( Bool_t  noalpha = kTRUE)
inline

Definition at line 91 of file TAxis.h.

◆ SetNoExponent()

void TAxis::SetNoExponent ( Bool_t  noExponent = kTRUE)
inline

Set the NoExponent flag By default, an exponent of the form 10^N is used when the label value are either all very small or very large.

The flag (in fBits) is passed to the drawing function TGaxis::PaintAxis

Definition at line 233 of file TAxis.h.

◆ SetParent()

virtual void TAxis::SetParent ( TObject obj)
inlinevirtual

Definition at line 167 of file TAxis.h.

◆ SetRange()

void TAxis::SetRange ( Int_t  first = 0,
Int_t  last = 0 
)
virtual

Set the viewing range for the axis using bin numbers.

Parameters
firstFirst bin of the range.
lastLast bin of the range. To set a range using the axis coordinates, use TAxis::SetRangeUser.

If first == last == 0 or if first > last or if the range specified does not intersect at all with the maximum available range [0, fNbins + 1], then the viewing range is reset by removing the bit TAxis::kAxisRange. In this case, the functions TAxis::GetFirst() and TAxis::GetLast() will return 1 and fNbins.

If the range specified partially intersects with [0, fNbins + 1], then the intersection range is accepted. For instance, if first == -2 and last == fNbins, the accepted range will be [0, fNbins] (fFirst = 0 and fLast = fNbins).

Note
For historical reasons, SetRange(0,0) resets the range even though bin 0 is technically reserved for the underflow; in order to set the range of the axis so that it only includes the underflow, use SetRange(-1,0).

Definition at line 1052 of file TAxis.cxx.

◆ SetRangeUser()

void TAxis::SetRangeUser ( Double_t  ufirst,
Double_t  ulast 
)
virtual

Set the viewing range for the axis from ufirst to ulast (in user coordinates, that is, the "natural" axis coordinates).

To set a range using the axis bin numbers, use TAxis::SetRange.

Definition at line 1080 of file TAxis.cxx.

◆ SetTicks()

void TAxis::SetTicks ( Option_t option = "+")
virtual

Set ticks orientation.

option = "+" ticks drawn on the "positive side" (default) option = "-" ticks drawn on the "negative side" option = "+-" ticks drawn on both sides option = "" ticks will be drawn as whatever is defined as default. No bit is set internally.

Definition at line 1109 of file TAxis.cxx.

◆ SetTimeDisplay()

virtual void TAxis::SetTimeDisplay ( Int_t  value)
inlinevirtual

Definition at line 171 of file TAxis.h.

◆ SetTimeFormat()

void TAxis::SetTimeFormat ( const char *  tformat = "")
virtual

Change the format used for time plotting.

The format string for date and time use the same options as the one used in the standard strftime C function, i.e. : for date :

     %a abbreviated weekday name
     %b abbreviated month name
     %d day of the month (01-31)
     %m month (01-12)
     %y year without century

for time :

     %H hour (24-hour clock)
     %I hour (12-hour clock)
     %p local equivalent of AM or PM
     %M minute (00-59)
     %S seconds (00-61)
     %% %

This function allows also to define the time offset. It is done via F which should be appended at the end of the format string. The time offset has the following format: 'yyyy-mm-dd hh:mm:ss' Example:

     h = new TH1F("Test","h",3000,0.,200000.);
     h->GetXaxis()->SetTimeDisplay(1);
     h->GetXaxis()->SetTimeFormat("%d\/%m\/%y%F2000-02-28 13:00:01");

This defines the time format being "dd/mm/yy" and the time offset as the February 28th 2003 at 13:00:01

If F is not specified, the time offset used will be the one defined by: gStyle->SetTimeOffset. For example like that:

     TDatime da(2003,02,28,12,00,00);
     gStyle->SetTimeOffset(da.Convert()); 

Definition at line 1157 of file TAxis.cxx.

◆ SetTimeOffset()

void TAxis::SetTimeOffset ( Double_t  toffset,
Option_t option = "local" 
)
virtual

Change the time offset If option = "gmt", set display mode to GMT.

Definition at line 1183 of file TAxis.cxx.

◆ Streamer()

void TAxis::Streamer ( TBuffer R__b)
overridevirtual

Stream an object of class TAxis.

Reimplemented from TObject.

Definition at line 1216 of file TAxis.cxx.

◆ StreamerNVirtual()

void TAxis::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 177 of file TAxis.h.

◆ UnZoom()

void TAxis::UnZoom ( )
virtual

Reset first & last bin to the full range.

Definition at line 1269 of file TAxis.cxx.

◆ ZoomOut()

void TAxis::ZoomOut ( Double_t  factor = 0,
Double_t  offset = 0 
)
virtual

Zoom out by a factor of 'factor' (default =2) uses previous zoom factor by default Keep center defined by 'offset' fixed ie.

-1 at left of current range, 0 in center, +1 at right

Definition at line 1344 of file TAxis.cxx.

Member Data Documentation

◆ fBits2

UShort_t TAxis::fBits2
private

Second bit status word.

Definition at line 40 of file TAxis.h.

◆ fFirst

Int_t TAxis::fFirst
private

First bin to display.

Definition at line 38 of file TAxis.h.

◆ fLabels

THashList* TAxis::fLabels
private

List of labels.

Definition at line 44 of file TAxis.h.

◆ fLast

Int_t TAxis::fLast
private

Last bin to display.

Definition at line 39 of file TAxis.h.

◆ fModLabs

TList* TAxis::fModLabs
private

List of modified labels.

Definition at line 45 of file TAxis.h.

◆ fNbins

Int_t TAxis::fNbins
private

Number of bins.

Definition at line 34 of file TAxis.h.

◆ fParent

TObject* TAxis::fParent
private

! Object owning this axis

Definition at line 43 of file TAxis.h.

◆ fTimeDisplay

Bool_t TAxis::fTimeDisplay
private

On/off displaying time values instead of numerics.

Definition at line 41 of file TAxis.h.

◆ fTimeFormat

TString TAxis::fTimeFormat
private

Date&time format, ex: 09/12/99 12:34:00.

Definition at line 42 of file TAxis.h.

◆ fXbins

TArrayD TAxis::fXbins
private

Bin edges array in X.

Definition at line 37 of file TAxis.h.

◆ fXmax

Double_t TAxis::fXmax
private

Upper edge of last bin.

Definition at line 36 of file TAxis.h.

◆ fXmin

Double_t TAxis::fXmin
private

Low edge of first bin.

Definition at line 35 of file TAxis.h.

Libraries for TAxis:

The documentation for this class was generated from the following files: