iOS & macOS Charting Documentation - SciChart iOS & macOS Charts SDK v4.x

Charting API Reference

  • Defines interface with method for notification when something in axis layout changes.

    See more

    Declaration

    Objective-C

    @protocol ISCIAxisLayoutChangeListener <NSObject>

    Swift

    protocol ISCIAxisLayoutChangeListener : NSObjectProtocol
  • Defines interface for elements which can be placed by ISCILayoutManager.

    See more

    Declaration

    Objective-C

    @protocol ISCILayoutable <NSObject>

    Swift

    protocol ISCILayoutable : NSObjectProtocol
  • Defines interface for layout strategy which determines how axes should be placed in SCIChartSurface.

    See more

    Declaration

    Objective-C

    @protocol ISCIAxisLayoutStrategy <NSObject>

    Swift

    protocol ISCIAxisLayoutStrategy : NSObjectProtocol
  • Defines the interface of ISCIDataSeriesCore change observer. Called when data series changes.

    Declaration

    Objective-C

    typedef void (^SCIDataSeriesObserver)(id<ISCIDataSeriesCore> _Nonnull,
                                          NSUInteger)

    Parameters

    dataSeries

    The data series instance which changed.

    dataSeriesUpdate

    The change action.

  • Defines base methods for all DataSeries throughout the SciChart SDK.

    See more

    Declaration

    Objective-C

    @protocol ISCIDataSeriesCore <NSObject>

    Swift

    protocol ISCIDataSeriesCore : NSObjectProtocol
  • Enumeration constants to define the placement position.

    See more

    Declaration

    Objective-C

    enum SCIPlacement {}

    Swift

    enum SCIPlacement : UInt
  • Enumeration constants to define the placement position.

    See more

    Declaration

    Objective-C

    enum SCISelectionMode {}

    Swift

    enum SCISelectionMode : UInt
  • Helper class which used to shift tooltip placement point .

    See more

    Declaration

    Objective-C

    @interface SCIShiftTooltipHelper : NSObject

    Swift

    class SCIShiftTooltipHelper : NSObject
  • Enumeration constants to define Tooltip placement position.

    See more

    Declaration

    Objective-C

    enum SCITooltipPosition {}

    Swift

    enum SCITooltipPosition : UInt
  • Defines the protocol for SCILegendDataSource.

    See more

    Declaration

    Objective-C

    @protocol ISCILegendDataSource <NSObject>

    Swift

    protocol ISCILegendDataSource : NSObjectProtocol
  • Provides a block which is used when checkBox checked/unchecked changes.

    Declaration

    Objective-C

    typedef void (^SCILegendCheckboxAction)(BOOL)

    Swift

    typealias SCILegendCheckboxAction = (Bool) -> Void
  • Defines a default legend items which contains:

    • Label with name.
    • Button checkbox for selection of series.
    • View which draws series icon.
    See more

    Declaration

    Objective-C

    @interface SCIDefaultLegendItemBase
        : UICollectionViewCell <ISCILegendItem, ISCIThemeable>

    Swift

    class SCIDefaultLegendItemBase : UICollectionViewCell, ISCILegendItem, ISCIThemeable
  • Using pre-computed constants, types which implement ISCICoordinateCalculator can convert from pixel coordinate to data value and back.

    See more

    Declaration

    Objective-C

    @protocol ISCICoordinateCalculator <NSObject>

    Swift

    protocol ISCICoordinateCalculator : NSObjectProtocol
  • A factory class which an appropriate coordinate calculator for the axis params passed in.

    See more

    Declaration

    Objective-C

    @interface SCICoordinateCalculatorFactory : NSObject

    Swift

    class SCICoordinateCalculatorFactory : NSObject
  • Defines the interface to a Delta type, which defines Major and Minor deltas used by ISCIAxis.

    See more

    Declaration

    Objective-C

    @protocol ISCIAxisDelta <NSObject>

    Swift

    protocol ISCIAxisDelta : NSObjectProtocol
  • Provides an interface for Delta calculators.

    See more

    Declaration

    Objective-C

    @protocol ISCIDeltaCalculator <NSObject>

    Swift

    protocol ISCIDeltaCalculator : NSObjectProtocol
  • Classes which implement ISCIThemeable interface can apply theme provided by ISCIThemeProvider instance.

    See more

    Declaration

    Objective-C

    @protocol ISCIThemeable <NSObject>

    Swift

    protocol ISCIThemeable : NSObjectProtocol
  • Defines the interface to a SciChart Theme, which provides theme colors for SCIChartSurface.

    Note

    You may implement ISCIThemeProvider yourself and pass it to SCIThemeManager to set the global theme for all SCIChartSurface views.
    See more

    Declaration

    Objective-C

    @protocol ISCIThemeProvider <NSObject>

    Swift

    protocol ISCIThemeProvider : NSObjectProtocol
  • Provides API for automatic theme management.

    See more

    Declaration

    Objective-C

    @interface SCIThemeManager : NSObject

    Swift

    class SCIThemeManager : NSObject
  • Defines the interface with methods for updating elements during render pass.

    See more

    Declaration

    Objective-C

    @protocol ISCIUpdatable <NSObject>

    Swift

    protocol ISCIUpdatable : NSObjectProtocol
  • Defines the interface which allows to get access to parent ISCIChartSurface instance.

    See more

    Declaration

    Objective-C

    @protocol ISCIChartSurfaceProvider <NSObject>

    Swift

    protocol ISCIChartSurfaceProvider : NSObjectProtocol
  • Defines the protocol with methods which are used for notification when SCIChartSurface is resized.

    See more

    Declaration

    Objective-C

    @protocol ISCIChartResizeListener <NSObject>

    Swift

    protocol ISCIChartResizeListener : NSObjectProtocol
  • Defines the listener interface which is called at the end of single render pass. Called at the end of the render pass.

    Declaration

    Objective-C

    typedef void (^SCIChartSurfaceRenderedListener)(id<ISCIChartSurface>,
                                                    SCIRenderedMessage *)

    Parameters

    surface

    The surface which is rendered.

    renderedMessage

    The rendered message.

  • Defines the interface for tooltips used in SciChart.

    See more

    Declaration

    Objective-C

    @protocol ISCITooltip

    Swift

    protocol ISCITooltip
  • A base class for tooltips used in SciChart.

    Declaration

    Objective-C

    @interface SCITooltipBase : UILabel <ISCITooltip>

    Swift

    class SCITooltipBase : UILabel, ISCITooltip
  • Defines constants for X and Y direction used throughout SciChart.

    See more

    Declaration

    Objective-C

    enum SCIDirection2D {}
  • Defines the Enum with 2D orientation constants.

    See more

    Declaration

    Objective-C

    enum SCIOrientation {}
  • Defines constants for behavior of the SCIZoomPanModifier.

    Possible values:

    • None - Means you can pan right off the edge of the data into uncharted space.
    • StretchAtExtents - Causes a zooming (stretch) action when you reach the edge of the data.
    • ClipAtMin - Forces the panning operation to stop suddenly at the minimum of the data, but expand at the maximum.
    • ClipAtMax - Forces the panning operation to stop suddenly at the maximum of the data, but expand at the minimum.
    • ClipAtExtents - Forces the panning operation to stop suddenly at the extents of the data.
    See more

    Declaration

    Objective-C

    enum SCIClipMode {}

    Swift

    enum SCIClipMode : UInt
  • Defines the protocol to property listener for chart.

    See more

    Declaration

    Objective-C

    @protocol ISCIChartListener <NSObject>

    Swift

    protocol ISCIChartListener : NSObjectProtocol
  • Defines the layout which performs layout on children which conforms to ISCILayoutable protocol.

    See more

    Declaration

    Objective-C

    @interface SCILayoutableView : UIView

    Swift

    class SCILayoutableView : UIView
  • Defines an animation listener which receives notifications from an animation.

    Note

    Notifications indicate animation related events, such as the start, update end or cancel the animation.
    See more

    Declaration

    Objective-C

    @protocol ISCIAnimatorListener <NSObject>

    Swift

    protocol ISCIAnimatorListener : NSObjectProtocol
  • This class provides a simple timing engine for running animations which calculate animated values and set them on target objects.

    Note

    Implemented with the DisplayLink under the hood.
    See more

    Declaration

    Objective-C

    @interface SCIValueAnimator : NSObject

    Swift

    class SCIValueAnimator : NSObject
  • This protocol represents a transformation of normalizedTime. Animations use it to transform their progress before computing an interpolation.

    Note

    Classes that implement this interface can control the pace at which an animation is performed.
    See more

    Declaration

    Objective-C

    @protocol ISCIEasingFunction <NSObject>

    Swift

    protocol ISCIEasingFunction : NSObjectProtocol
  • Defines interface to the Adorner Provider which draws adorners for the ISCIAnnotation instance.

    See more

    Declaration

    Objective-C

    @protocol ISCIAdornerProvider <NSObject>

    Swift

    protocol ISCIAdornerProvider : NSObjectProtocol
  • Defines the interface for adorner action which is used during interfaction with ISCIAnnotation.

    See more

    Declaration

    Objective-C

    @protocol ISCIAnnotationAdornerAction <NSObject>

    Swift

    protocol ISCIAnnotationAdornerAction : NSObjectProtocol
  • Defines the interface which draws overlay for selected annotation.

    See more

    Declaration

    Objective-C

    @protocol ISCIAnnotationSelectionDrawable <NSObject>

    Swift

    protocol ISCIAnnotationSelectionDrawable : NSObjectProtocol
  • Defines the protocol for Resizing Grip which is used to resize ISCIAnnotation instance.

    See more

    Declaration

    Objective-C

    @protocol ISCIResizingGrip <NSObject>

    Swift

    protocol ISCIResizingGrip : NSObjectProtocol
  • Enumeration constants to define the Coordinate mode used to place an annotation.

    See more

    Declaration

    Objective-C

    enum SCIAnnotationCoordinateMode {}
  • Used internally by the Annotation API. Class to hold transformed coordinates for placement of an annotation on the chart.

    See more

    Declaration

    Objective-C

    @interface SCIAnnotationCoordinates : NSObject <ISCICleanable>

    Swift

    class SCIAnnotationCoordinates : NSObject, ISCICleanable
  • Enumeration constants to define label placement.

    See more

    Declaration

    Objective-C

    enum SCILabelPlacement {}

    Swift

    enum SCILabelPlacement : UInt
  • The SCIAxisMarkerAnnotation provides an axis label which is data-bound to its data X or Y value.

    Note

    Used to place a marker on the X or Y Axis it can give feedback about the latest value of a series, or important points in a series.
    See more

    Declaration

    Objective-C

    @interface SCIAxisMarkerAnnotation : SCIAnchorPointAnnotation

    Swift

    class SCIAxisMarkerAnnotation : SCIAnchorPointAnnotation
  • Defines the block with are called when selection of the ISCIAnnotation instance changes.

    Declaration

    Objective-C

    typedef void (^SCIAnnotationSelectionChangedListener)(id<ISCIAnnotation>, BOOL)

    Parameters

    annotation

    annotation which has been changed.

    isSelected

    new isSelected value for annotation..

  • Defines the block to get notification about changes in LayoutManager. Notifies about changing of axis alignment in one of axes.

    Declaration

    Objective-C

    typedef BOOL (^SCIAxisAlignmentChangedListener)(id<ISCIAxis>, SCIAxisAlignment,
                                                    SCIAxisAlignment)

    Parameters

    axis

    axis which has been changed.

    oldValue

    old axis alignment.

    newValue

    new axis alignment.

  • Defines constants for the current axis setup for this render pass.

    See more

    Declaration

    Objective-C

    struct SCIAxisParams {}

    Swift

    struct SCIAxisParams
  • Defines constants for the current axis setup for this render pass.

    Declaration

    Objective-C

    typedef struct SCIAxisParams SCIAxisParams
  • Constants used for placing an object within a potentially larger container.

    Note

    Approach is based on Android’s Gravity constants.
    See more

    Declaration

    Objective-C

    enum SCIAlignment {}

    Swift

    struct SCIAlignment : OptionSet
  • Provides enumeration constants to define auto range behavior for ISCIAxis implementors.

    See more

    Declaration

    Objective-C

    enum SCIAutoRange {}
  • Enumeration constants to define the alignment mode used to place an axis.

    Possible values:

    • Auto - An element stretched to fill the entire layout slot for the parent element.
    • Right - An element aligned to the right of the layout slot for the parent element.
    • Left - An element aligned to the left of the layout slot for the parent element.
    • Top - An element aligned to the top of the layout slot for the parent element.
    • Bottom - An element aligned to the bottom of the layout slot for the parent element.
    See more

    Declaration

    Objective-C

    enum SCIAxisAlignment {}
  • Defines interface for listening of data range changes for this axis. Called when axis data range changed.

    Declaration

    Objective-C

    typedef void (^SCIDataRangeChangeListener)(id<ISCIAxisCore>)

    Parameters

    axis

    The target axis.

  • Defines interface for listening of visible range changes for this axis. Called when ISCIAxisCore.visibleRange property changed.

    Declaration

    Objective-C

    typedef void (^SCIVisibleRangeChangeListener)(id<ISCIAxisCore>, id<ISCIRange>,
                                                  id<ISCIRange>, BOOL)

    Parameters

    axis

    The target axis.

    oldRange

    The old VisibleRange.

    newRange

    The new VisibleRange.

    isAnimating

    Flag indicating whether the VisibleRange is animating.

  • Defines a set of operations which allows to interact with axis that owns current instance of ISCIAxisInteractivityHelper.

    See more

    Declaration

    Objective-C

    @protocol ISCIAxisInteractivityHelper <NSObject>

    Swift

    protocol ISCIAxisInteractivityHelper : NSObjectProtocol
  • Defines a class with style for each tick label rendered by SCIAxisBase.

    See more

    Declaration

    Objective-C

    @interface SCIAxisTickLabelStyle : NSObject

    Swift

    class SCIAxisTickLabelStyle : NSObject
  • A class which contains tick coordinates.

    Note

    Used internally when drawing tick marks and grid lines.
    See more

    Declaration

    Objective-C

    @interface SCITickCoordinates : NSObject <ISCICleanable>

    Swift

    class SCITickCoordinates : NSObject, ISCICleanable
  • A class which contains axis ticks.

    Note

    Used internally when drawing tick marks and grid lines.
    See more

    Declaration

    Objective-C

    @interface SCIAxisTicks : NSObject <ISCICleanable>

    Swift

    class SCIAxisTicks : NSObject, ISCICleanable