NChart3D_iOS.NChartValueAxis Class Reference

The NChartValueAxis class provides methods to display the value axis of the chart. More...

Inheritance diagram for NChart3D_iOS.NChartValueAxis:
NChart3D_iOS.NChartAxis NChart3D_iOS.NChartObject

Public Member Functions

void ZoomToRegion (float startValue, float endValue, float duration, float delay)
 Zoom to given region by specifying the least and the greatest values that should be visible on the axis. If the axis has array of ticks indices in this array can be used. Use this method after you updated data of the chart with UpdateData call. More...
 
void ZoomToRegion (NSDate startDate, NSDate endDate, float duration, float delay)
 Zoom to given region by specifying the earliest and the latest dates that should be visible on the axis. This method works in date mode only, if HasDates is true. Use this method after you updated data of the chart with More...
 
void AddMark (NChartValueAxisMark mark)
 Add axis mark. More...
 
void RemoveMark (NChartValueAxisMark mark)
 Remove axis mark. More...
 
void RemoveAllMarks ()
 Remove all axis mark. More...
 
void CalcOptimalMinTickSpacing ()
 Calculate optimal value for MinTickSpacing. Use this method if you want to get MinTickSpacing that corresponds to the actual lengths of axis ticks' labels. You should call this method after the More...
 
void FitZoomByMinTickSpacing (float duration, float delay)
 Fit the zoom according to the current MinTickSpacing. Use this method if you want to zoom the chart so that the maximal number of points is visible with no skipping of ticks on the axis. This method requires frame of the chart to be determined. So if you call this method before the chart's layout, it will fail. If you want the axes to be automatically zoomed according to the MinTickSpacing, use the flag ShouldAutoFitZoomByMinTickSpacing. More...
 

Properties

NChartValueAxisKind Kind [get]
 Kind of axis. More...
 
double MinValue [get]
 Minimal value on the axis. It is obtained from the data source and if needed processed to look more beautiful. More...
 
double MaxValue [get]
 Maximal value on the axis. It is obtained from the data source and if needed processed to look more beautiful. More...
 
double Step [get]
 Step from one tick to another. It is either obtained from the data source or if not provided calculated according to the MinValue and MaxValue to look beautiful. More...
 
NSDate MinDate [get]
 Minimal date on the axis. It is obtained from the data source and, if needed, processed to look more beautiful. This property works in date mode only, if HasDates is true. Otherwise it returns null. More...
 
NSDate MaxDate [get]
 Maximal date on the axis. It is obtained from the data source and, if needed, processed to look more beautiful. This property works in date mode only, if HasDates is true. Otherwise it returns null. More...
 
double DateStep [get]
 Time interval from one date tick to another. It is either obtained from the data source or, if not provided, calculated according to the MinDate and MaxDate to look beautiful. This property works in date mode only, if HasDates is true. Otherwise it returns 0. More...
 
string[] Ticks [get]
 Array of strings that are displayed as ticks on the axis. It is obtained from the data source or null if not provided. More...
 
nint TickCount [get]
 Number of ticks on the axis. It is the number of ticks in an array or the number of values between MinValue and MaxValue through step. More...
 
double Length [get]
 Length of axis in 3D scene units. This value is obtained from the data source or if not provided is assigned to 1. It has an effect for axes being displayed in 3D only. In 2D this value is ignored because axes fill the whole area available on the screen. One 3D scene unit is equal to half a screen size by initial zoom (so space of the 3D scene is actually nonlinear respective to the screen). Therefore by default all axes have equal length and form a kind of cube in 3D that is centered on the screen and is as big as half of the biggest screen's dimension. However if you want for example to make the Z-axis shorter than the others you can provide a length of 0.5 for it. It will therefore be twice as short as the others. More...
 
UIColor Color [get, set]
 Color of the axis line. More...
 
UIFont Font [get, set]
 Font for the ticks' labels. More...
 
UIColor TextColor [get, set]
 Color of the text for the ticks' labels. More...
 
bool HasOffset [get, set]
 Flag that determines if there should be an offset on the axis. The offset is the spacing from the beginning of the axis to the first tick and from the last tick to the end of the axis. If this flag is true the spacing is half a step. If false spacing is zero. More...
 
float MinTickSpacing [get, set]
 Minimal spacing between neighbor ticks in pixels (the tick is the center place for the tick label, a kind of milestone on the axis). According to this value some labels can be hidden, if there are too many of them. The default value is 50. More...
 
float MaxLabelLength [get, set]
 Maximal allowed label length in pixels. If 0, maximal label width is calculated automatically according to the length between neighbor ticks. The default value is 0. More...
 
UILineBreakMode LabelsLineBreakMode [get, set]
 Line break mode for axis labels. The default value is UILineBreakMode.ByWordWrapping. More...
 
float Thickness [get, set]
 Thickness of the axis' line in pixels. More...
 
NChartLineDash LineDash [get, set]
 Dash of the axis' line. More...
 
NChartAxisTick MajorTicks [get]
 Major ticks of the axis. Major ticks are spread from the minValue to the maxValue through step or if no MinValue and MaxValue are provided but a ticks array is provided the whole axis length is divided by the number of ticks and for each tick there is a major tick displayed. Major ticks can be labeled. More...
 
NChartAxisTick MinorTicks [get]
 Minor ticks of the axis. Minor ticks are displayed in the middle between two neighbor major ticks. See MajorTicks for details. More...
 
NChartAxisTick TinyTicks [get]
 Tiny ticks of the axis. Tiny ticks are displayed between consecutive major ticks. However there is a gap in tiny ticks where tiny ticks potentially overlap with major/minor ticks (even if major/minor ticks are switched off). See MajorTicks, MinorTicks and TinyTickIntervalsPerInterval for details. More...
 
nint TinyTickIntervalsPerInterval [get, set]
 Number of tiny intervals the interval between two consecutive major ticks is split up into. Tiny intervals are bounded with the tiny ticks. The default value is 0, which means no tiny ticks are displayed. If for example this value is 10, that means each interval between two labels is split up into 10 sub-intervals and therefore should have 11 tiny ticks inside. However, only 8 tiny ticks will be visible, and 1th, 6th and 11th ticks will be discarded, because they potentially overlap with major/minor ticks (even if major/minor ticks are switched off). More...
 
NChartLabel Caption [get]
 Caption of the axis. More...
 
bool LabelsVisible [get, set]
 Flag that determines if the labels of ticks are visible (true) or not (false). The default value is true. More...
 
bool LineVisible [get, set]
 Flag that determines if the line of the axis is visible (true) or not (false). The default value is false. More...
 
bool AlwaysShowZero [get, set]
 Flag that determines whether zero is always on the axis. This flag makes sense if MinValue and MaxValue are both less or greater than zero and are beautified according to the data source. In this case if this flag is false it may happen that no zero will be on the axis (for example if MinValue = 11.5 and MaxValue = 19 the axis will probably start with 10 and end with 20 having 4 steps). With this flag set to true zero will always be on the axis so even with MinValue = 11.5 and MaxValue = 19 the axis will start with 0 and end with 20 having probably 5 steps or so. The default value is false. More...
 
bool LabelsIn3D [get, set]
 Flag that determines whether the axis labels are in "perspective" screen (true) or are projected in the 2D screen (false). This flag only affects 3D-charts. The default value is true. More...
 
bool CaptionIn3D [get, set]
 Flag that determines whether the axis caption is in "perspective" screen (true) or is projected in the 2D screen (false). This flag only affects 3D-charts. The deafult value is true. More...
 
bool ShouldBeautifyMinAndMax [get, set]
 Flag that detemines whether min and max values on the axis should be beautified in case they are calculated (true) or not (false). The default vaule is true. More...
 
float LabelsAngle [get, set]
 Axis labels' rotation angle. See NChart.DrawIn3D. See LabelsIn3D. More...
 
NChartAxisLabelsAlignment LabelsAlignment [get, set]
 Alignment of the axis labels relative to the axis ticks. The default value is NChartAxisLabelsAlignment.Center. More...
 
INChartValueAxisDataSource DataSource [get, set]
 Data source of the axis. More...
 
INChartValueAxisDelegate Delegate [get, set]
 Delegate of the axis. More...
 
NChartValueAxisMark[] Marks [get]
 Array of axis marks. More...
 
bool ShouldAutoFitZoomByMinTickSpacing [get, set]
 Flag determining if zoom of the axis should be automatically fit according to the current MinTickSpacing (true) or not (false). The default value is false. Set this flag to true if you want to zoom the chart so that the maximal number of points is visible with no skipping of ticks on the axis. Best practice is to set this flag and call CalcOptimalMinTickSpacing. If this flag is set to true, zoom of the axis is changed automatically by each chart's layout. Zoom you set manually before layout will be ignored. Auto fitting works in 2D mode only. More...
 
bool HasDates [get, set]
 Flag indicating if axis displays dates instead of values (true) or regular values (false). The default value is false. More...
 
bool IsLogarithmic [get, set]
 Flag determining if axis has logarithmic scale (true) or linear scale (false). The default value is false. The base of scale's logarithm is controlled by LogarithmBase property. More...
 
double LogarithmBase [get, set]
 Base of logarithm for logarithmic scale. The default value is 10. This property takes effect if IsLogarithmic is set to true only. More...
 
NChartAxisPositionCoord PositionX [get, set]
 Coordinate controlling horizontal position of the axis. See also NChartAxisPositionCoord More...
 
NChartAxisPositionCoord PositionY [get, set]
 Coordinate controlling vertical position of the axis. See also NChartAxisPositionCoord More...
 
NChartAxisPositionCoord PositionZ [get, set]
 Coordinate controlling depth position of the axis. See also NChartAxisPositionCoord More...
 
bool IsFlipped [get, set]
 Flag determining if value axis is flipped (displayed from max to min, YES) or not (displayed from min to max, NO). The default value is NO. More...
 
NChartValueAxisRange VisibleRange [get]
 Get values (or dates, if the axis has dates) range visible on the screen in current chart zoom/pan position. You can alter this value by More...
 
- Properties inherited from NChart3D_iOS.NChartObject
bool Visible [get, set]
 Flag that determines if the object is visible (true) or not (false). The default value is true. More...
 
NChart Chart [get]
 Chart the object belongs to. This property is assigned automatically whenever the object is assigned to the chart. More...
 

Detailed Description

The NChartValueAxis class provides methods to display the value axis of the chart.

Member Function Documentation

void NChart3D_iOS.NChartValueAxis.AddMark ( NChartValueAxisMark  mark)

Add axis mark.

Parameters
markmark to add.
void NChart3D_iOS.NChartValueAxis.CalcOptimalMinTickSpacing ( )

Calculate optimal value for MinTickSpacing. Use this method if you want to get MinTickSpacing that corresponds to the actual lengths of axis ticks' labels. You should call this method after the

UpdateData call of the chart, because this method operates with the data obtained from data source. If you call it before the data are updated, the result will be wrong.

void NChart3D_iOS.NChartValueAxis.FitZoomByMinTickSpacing ( float  duration,
float  delay 
)

Fit the zoom according to the current MinTickSpacing. Use this method if you want to zoom the chart so that the maximal number of points is visible with no skipping of ticks on the axis. This method requires frame of the chart to be determined. So if you call this method before the chart's layout, it will fail. If you want the axes to be automatically zoomed according to the MinTickSpacing, use the flag ShouldAutoFitZoomByMinTickSpacing.

Parameters
duration- duration of the animation in seconds.
delay- delay of animation in seconds.
void NChart3D_iOS.NChartValueAxis.RemoveAllMarks ( )

Remove all axis mark.

void NChart3D_iOS.NChartValueAxis.RemoveMark ( NChartValueAxisMark  mark)

Remove axis mark.

Parameters
markmark to remove.
void NChart3D_iOS.NChartValueAxis.ZoomToRegion ( float  startValue,
float  endValue,
float  duration,
float  delay 
)

Zoom to given region by specifying the least and the greatest values that should be visible on the axis. If the axis has array of ticks indices in this array can be used. Use this method after you updated data of the chart with UpdateData call.

Parameters
startValueleast value that should be visible.
endValuegreatest value that should be visible.
durationduration of the animation in seconds.
delaydelay of animation in seconds.
void NChart3D_iOS.NChartValueAxis.ZoomToRegion ( NSDate  startDate,
NSDate  endDate,
float  duration,
float  delay 
)

Zoom to given region by specifying the earliest and the latest dates that should be visible on the axis. This method works in date mode only, if HasDates is true. Use this method after you updated data of the chart with

UpdateData call.

Parameters
startDateearliest date that should be visible.
endDatelatest date that should be visible.
durationduration of the animation in seconds.
delaydelay of animation in seconds.

Property Documentation

bool NChart3D_iOS.NChartValueAxis.AlwaysShowZero
getset

Flag that determines whether zero is always on the axis. This flag makes sense if MinValue and MaxValue are both less or greater than zero and are beautified according to the data source. In this case if this flag is false it may happen that no zero will be on the axis (for example if MinValue = 11.5 and MaxValue = 19 the axis will probably start with 10 and end with 20 having 4 steps). With this flag set to true zero will always be on the axis so even with MinValue = 11.5 and MaxValue = 19 the axis will start with 0 and end with 20 having probably 5 steps or so. The default value is false.

NChartLabel NChart3D_iOS.NChartValueAxis.Caption
get

Caption of the axis.

bool NChart3D_iOS.NChartValueAxis.CaptionIn3D
getset

Flag that determines whether the axis caption is in "perspective" screen (true) or is projected in the 2D screen (false). This flag only affects 3D-charts. The deafult value is true.

UIColor NChart3D_iOS.NChartValueAxis.Color
getset

Color of the axis line.

INChartValueAxisDataSource NChart3D_iOS.NChartValueAxis.DataSource
getset

Data source of the axis.

double NChart3D_iOS.NChartValueAxis.DateStep
get

Time interval from one date tick to another. It is either obtained from the data source or, if not provided, calculated according to the MinDate and MaxDate to look beautiful. This property works in date mode only, if HasDates is true. Otherwise it returns 0.

INChartValueAxisDelegate NChart3D_iOS.NChartValueAxis.Delegate
getset

Delegate of the axis.

UIFont NChart3D_iOS.NChartValueAxis.Font
getset

Font for the ticks' labels.

bool NChart3D_iOS.NChartValueAxis.HasDates
getset

Flag indicating if axis displays dates instead of values (true) or regular values (false). The default value is false.

bool NChart3D_iOS.NChartValueAxis.HasOffset
getset

Flag that determines if there should be an offset on the axis. The offset is the spacing from the beginning of the axis to the first tick and from the last tick to the end of the axis. If this flag is true the spacing is half a step. If false spacing is zero.

bool NChart3D_iOS.NChartValueAxis.IsFlipped
getset

Flag determining if value axis is flipped (displayed from max to min, YES) or not (displayed from min to max, NO). The default value is NO.

bool NChart3D_iOS.NChartValueAxis.IsLogarithmic
getset

Flag determining if axis has logarithmic scale (true) or linear scale (false). The default value is false. The base of scale's logarithm is controlled by LogarithmBase property.

NChartValueAxisKind NChart3D_iOS.NChartValueAxis.Kind
get

Kind of axis.

NChartAxisLabelsAlignment NChart3D_iOS.NChartValueAxis.LabelsAlignment
getset

Alignment of the axis labels relative to the axis ticks. The default value is NChartAxisLabelsAlignment.Center.

float NChart3D_iOS.NChartValueAxis.LabelsAngle
getset

Axis labels' rotation angle. See NChart.DrawIn3D. See LabelsIn3D.

bool NChart3D_iOS.NChartValueAxis.LabelsIn3D
getset

Flag that determines whether the axis labels are in "perspective" screen (true) or are projected in the 2D screen (false). This flag only affects 3D-charts. The default value is true.

UILineBreakMode NChart3D_iOS.NChartValueAxis.LabelsLineBreakMode
getset

Line break mode for axis labels. The default value is UILineBreakMode.ByWordWrapping.

bool NChart3D_iOS.NChartValueAxis.LabelsVisible
getset

Flag that determines if the labels of ticks are visible (true) or not (false). The default value is true.

double NChart3D_iOS.NChartValueAxis.Length
get

Length of axis in 3D scene units. This value is obtained from the data source or if not provided is assigned to 1. It has an effect for axes being displayed in 3D only. In 2D this value is ignored because axes fill the whole area available on the screen. One 3D scene unit is equal to half a screen size by initial zoom (so space of the 3D scene is actually nonlinear respective to the screen). Therefore by default all axes have equal length and form a kind of cube in 3D that is centered on the screen and is as big as half of the biggest screen's dimension. However if you want for example to make the Z-axis shorter than the others you can provide a length of 0.5 for it. It will therefore be twice as short as the others.

NChartLineDash NChart3D_iOS.NChartValueAxis.LineDash
getset

Dash of the axis' line.

bool NChart3D_iOS.NChartValueAxis.LineVisible
getset

Flag that determines if the line of the axis is visible (true) or not (false). The default value is false.

double NChart3D_iOS.NChartValueAxis.LogarithmBase
getset

Base of logarithm for logarithmic scale. The default value is 10. This property takes effect if IsLogarithmic is set to true only.

NChartAxisTick NChart3D_iOS.NChartValueAxis.MajorTicks
get

Major ticks of the axis. Major ticks are spread from the minValue to the maxValue through step or if no MinValue and MaxValue are provided but a ticks array is provided the whole axis length is divided by the number of ticks and for each tick there is a major tick displayed. Major ticks can be labeled.

NChartValueAxisMark [] NChart3D_iOS.NChartValueAxis.Marks
get

Array of axis marks.

NSDate NChart3D_iOS.NChartValueAxis.MaxDate
get

Maximal date on the axis. It is obtained from the data source and, if needed, processed to look more beautiful. This property works in date mode only, if HasDates is true. Otherwise it returns null.

float NChart3D_iOS.NChartValueAxis.MaxLabelLength
getset

Maximal allowed label length in pixels. If 0, maximal label width is calculated automatically according to the length between neighbor ticks. The default value is 0.

double NChart3D_iOS.NChartValueAxis.MaxValue
get

Maximal value on the axis. It is obtained from the data source and if needed processed to look more beautiful.

NSDate NChart3D_iOS.NChartValueAxis.MinDate
get

Minimal date on the axis. It is obtained from the data source and, if needed, processed to look more beautiful. This property works in date mode only, if HasDates is true. Otherwise it returns null.

NChartAxisTick NChart3D_iOS.NChartValueAxis.MinorTicks
get

Minor ticks of the axis. Minor ticks are displayed in the middle between two neighbor major ticks. See MajorTicks for details.

float NChart3D_iOS.NChartValueAxis.MinTickSpacing
getset

Minimal spacing between neighbor ticks in pixels (the tick is the center place for the tick label, a kind of milestone on the axis). According to this value some labels can be hidden, if there are too many of them. The default value is 50.

double NChart3D_iOS.NChartValueAxis.MinValue
get

Minimal value on the axis. It is obtained from the data source and if needed processed to look more beautiful.

NChartAxisPositionCoord NChart3D_iOS.NChartValueAxis.PositionX
getset

Coordinate controlling horizontal position of the axis. See also NChartAxisPositionCoord

NChartAxisPositionCoord NChart3D_iOS.NChartValueAxis.PositionY
getset

Coordinate controlling vertical position of the axis. See also NChartAxisPositionCoord

NChartAxisPositionCoord NChart3D_iOS.NChartValueAxis.PositionZ
getset

Coordinate controlling depth position of the axis. See also NChartAxisPositionCoord

bool NChart3D_iOS.NChartValueAxis.ShouldAutoFitZoomByMinTickSpacing
getset

Flag determining if zoom of the axis should be automatically fit according to the current MinTickSpacing (true) or not (false). The default value is false. Set this flag to true if you want to zoom the chart so that the maximal number of points is visible with no skipping of ticks on the axis. Best practice is to set this flag and call CalcOptimalMinTickSpacing. If this flag is set to true, zoom of the axis is changed automatically by each chart's layout. Zoom you set manually before layout will be ignored. Auto fitting works in 2D mode only.

bool NChart3D_iOS.NChartValueAxis.ShouldBeautifyMinAndMax
getset

Flag that detemines whether min and max values on the axis should be beautified in case they are calculated (true) or not (false). The default vaule is true.

double NChart3D_iOS.NChartValueAxis.Step
get

Step from one tick to another. It is either obtained from the data source or if not provided calculated according to the MinValue and MaxValue to look beautiful.

UIColor NChart3D_iOS.NChartValueAxis.TextColor
getset

Color of the text for the ticks' labels.

float NChart3D_iOS.NChartValueAxis.Thickness
getset

Thickness of the axis' line in pixels.

nint NChart3D_iOS.NChartValueAxis.TickCount
get

Number of ticks on the axis. It is the number of ticks in an array or the number of values between MinValue and MaxValue through step.

string [] NChart3D_iOS.NChartValueAxis.Ticks
get

Array of strings that are displayed as ticks on the axis. It is obtained from the data source or null if not provided.

nint NChart3D_iOS.NChartValueAxis.TinyTickIntervalsPerInterval
getset

Number of tiny intervals the interval between two consecutive major ticks is split up into. Tiny intervals are bounded with the tiny ticks. The default value is 0, which means no tiny ticks are displayed. If for example this value is 10, that means each interval between two labels is split up into 10 sub-intervals and therefore should have 11 tiny ticks inside. However, only 8 tiny ticks will be visible, and 1th, 6th and 11th ticks will be discarded, because they potentially overlap with major/minor ticks (even if major/minor ticks are switched off).

NChartAxisTick NChart3D_iOS.NChartValueAxis.TinyTicks
get

Tiny ticks of the axis. Tiny ticks are displayed between consecutive major ticks. However there is a gap in tiny ticks where tiny ticks potentially overlap with major/minor ticks (even if major/minor ticks are switched off). See MajorTicks, MinorTicks and TinyTickIntervalsPerInterval for details.

NChartValueAxisRange NChart3D_iOS.NChartValueAxis.VisibleRange
get

Get values (or dates, if the axis has dates) range visible on the screen in current chart zoom/pan position. You can alter this value by

zoomToRegion call.