<SCIChartSurfaceProtocol> Protocol Reference

#import <SCIChartSurface.h>

Inheritance diagram for <SCIChartSurfaceProtocol>:
<SCIInvalidatableElementProtocol> SCIChartSurface

Instance Methods

(void) - setChartTitleLabelInsets:
 Set insets for chartTitleLabel on chartTitleView. More...
 
(nonnull UIImage *) - exportToUIImage
 Export current chart surface into UIImage object. More...
 
(CGRect) - frame
 return frame of SciChart surface More...
 
(CGRect) - chartFrame
 Return frame of charts area. More...
 
- Instance Methods inherited from <SCIInvalidatableElementProtocol>
(void) - invalidateElement
 Asynchronously requests that the element redraws itself plus children. More...
 

Class Methods

(void) + setRuntimeLicenseKey:
 Sets the License Key for all SCIChartSurface instances. More...
 

Properties

SCIPenStyle *_Nonnull renderableSeriesAreaBorder
 Defines chart area border thicknes and color. More...
 
SCIBrushStyle *_Nonnull renderableSeriesAreaFill
 Defines background fill color for chart area. More...
 
SCIChartModifierCollectionchartModifiers
 Defines the SCIChartModifier, responsible for zoom, pan or tooltip behaviors. More...
 
SCIAnnotationCollectionannotations
 Attaches an annotation or a SCIAnnotationCollection to the SCIChartSurface. More...
 
SCIAxisCollectionxAxes
 The collection of XAxes when in a multiple Axis scenario. More...
 
SCIAxisCollectionyAxes
 The collection of YAxes when in a multiple Axis scenario. More...
 
SCIRenderableSeriesCollectionrenderableSeries
 Exposes the collection of SCIRenderableSeries on the SCIChartSurface. More...
 
SCIRenderableSeriesCollectionselectedRenderableSeries
 Exposes the collection of selected SCIRenderableSeries on the SCIChartSurface. More...
 
id< SCIViewportManagerProtocolviewportManager
 Defines the SCIViewportManager instance which controls the viewport ranges on chart updates. More...
 
NSString * chartTitle
 Text for chat title. More...
 
UIFont * chartTitleFont
 Font for chart title if you use chartTitle. More...
 
UIColor * chartTitleColor
 Color text for chart title if you use chartTitle. More...
 
NSTextAlignment chartTitleAlignment
 Text aligment for chart title if you use chartTitle. More...
 
UIView * chartTitleView
 Custom view for chart title. More...
 
id< SCIRenderSurfaceProtocolrenderSurface
 
SCIGestureController *_Nonnull gestureController
 Sets or gets gestures handler on surface. More...
 

Method Documentation

◆ chartFrame()

- (CGRect) chartFrame

Return frame of charts area.

Reimplemented in SCIChartSurface.

◆ exportToUIImage()

- (nonnull UIImage*) exportToUIImage

Export current chart surface into UIImage object.

It is used for taking screenshots.

◆ frame()

- (CGRect) frame

return frame of SciChart surface

◆ setChartTitleLabelInsets:()

- (void) setChartTitleLabelInsets: (UIEdgeInsets)  chartTitleLabelInsets

Set insets for chartTitleLabel on chartTitleView.

◆ setRuntimeLicenseKey:()

+ (void) setRuntimeLicenseKey: (nonnull NSString *)  licenseContract

Sets the License Key for all SCIChartSurface instances.

For instructions of use, please see http://www.scichart.com/licensing-scichart-ios

Parameters
licenseContract<#licenseContract description#>

Property Documentation

◆ annotations

- (SCIAnnotationCollection*) annotations
readwritenonatomicstrong

Attaches an annotation or a SCIAnnotationCollection to the SCIChartSurface.

Annotations can be used to add lines, text, boxes or markers onto the chart. The annotations update position as you zoom and pan the chart

// Objective-C Example
SCIBoxAnnotation * box = [[SCIBoxAnnotation alloc] init];
box.xStart = SCIGeneric(2.0);
box.yStart = SCIGeneric(2.0);
box.xEnd = SCIGeneric(4.0);
box.yEnd = SCIGeneric(4.0);
box.isEnabled = NO;
box.style.fillBrush = [[SCIBrushSolid alloc] initWithColorCode:0x30FF7000];
SCILineAnnotation * lineAnnotation = [[SCILineAnnotation alloc] init];
lineAnnotation.xStart = SCIGeneric(1.0);
lineAnnotation.yStart = SCIGeneric(1.0);
lineAnnotation.xEnd = SCIGeneric(2.0);
lineAnnotation.yEnd = SCIGeneric(2.0);
lineAnnotation.style.linePen = [[SCIPenSolid alloc] initWithColorCode:0xFF4c8aff Width:2];
SCITextAnnotation * textAnnotation = [[SCITextAnnotation alloc] init];
textAnnotation.xPosition = SCIGeneric(4.0);
textAnnotation.yPosition = SCIGeneric(5.0);
textAnnotation.text = @"An amazing TextAnnotation";
textAnnotation.style.textStyle = textFormatting;
SCIAnnotationGroup * annotationGroup = [[SCIAnnotationGroup alloc]initWithChildAnnotations:@[box, lineAnnotation, textAnnotation]];
[surface setAnnotation:annotationGroup];
// Swift example
var box = SCIBoxAnnotation()
box.xStart = SCIGeneric(2.0)
box.yStart = SCIGeneric(2.0)
box.xEnd = SCIGeneric(4.0)
box.yEnd = SCIGeneric(4.0)
box.isEnabled = false
box.style.fillBrush = SCIBrushSolid(colorCode: 0x30FF7000)
var lineAnnotation = SCILineAnnotation()
lineAnnotation.xStart = SCIGeneric(1.0)
lineAnnotation.yStart = SCIGeneric(1.0)
lineAnnotation.xEnd = SCIGeneric(2.0)
lineAnnotation.yEnd = SCIGeneric(2.0)
lineAnnotation.style.linePen = SCIPenSolid(colorCode: 0xFF4c8aff, width: 2)
var textAnnotation = SCITextAnnotation()
textAnnotation.xPosition = SCIGeneric(4.0)
textAnnotation.yPosition = SCIGeneric(5.0)
textAnnotation.text = "An amazing TextAnnotation"
textAnnotation.style.textStyle = textFormatting
var annotationGroup = SCIAnnotationGroup(childAnnotations: [box, lineAnnotation, textAnnotation])
surface.annotation = annotationGroup
@code
See also
SCIAnnotationProtocol
SCILineAnnotation
SCIBoxAnnotation
SCITextAnnotation
SCIAnnotationGroup

◆ chartModifiers

- (SCIChartModifierCollection*) chartModifiers
readwritenonatomicstrong

Defines the SCIChartModifier, responsible for zoom, pan or tooltip behaviors.

The SCIChartModifier API allows you to attach one or more modifiers (behaviors) to the SCIChartSurface. Behaviors can include zooming, panning, pinch zoom, legends, tooltips and more

It is possible group more than SCIChartModifier using the SCIModifierGroup type. It is also possible to define your own customer SCIChartModifier derived types.

// Defining ChartModifier in Objective C
SCIRolloverModifier * rollover = [[SCIRolloverModifier alloc] init];
[rollover setModifierName:@"Rollover Modifier"];
[zem setModifierName:@"ZoomExtents Modifier"];
[pzm setModifierName:@"PinchZoom Modifier"];
[yDragModifier setModifierName:@"YAxis Drag Modifier"];
[xDragModifier setModifierName:@"XAxis Drag Modifier"];
SCIModifierGroup * gm = [[SCIModifierGroup alloc] initWithChildModifiers:@[xDragModifier, yDragModifier, pzm, zem, rollover]];
sciChartSurface.chartModifier = gm;
// Defining ChartModifiers in Swift
zem.modifierName = extendZoomModifierName
pzm.modifierName = pinchZoomModifierName
let rollover = SCIRolloverModifier()
rollover.modifierName = rolloverModifierName
let groupModifier = SCIModifierGroup(childModifiers: [pzm, zem, rollover])
chartSurface.chartModifier = groupModifier
See also
SCIChartModifierProtocol
SCIChartModifierBase
SCIModifierGroup
SCIXAxisDragModifier
SCIYAxisDragModifier
SCIAxisPinchZoomModifier
SCIZoomPanModifier
SCIPinchZoomModifier
SCIZoomExtentsModifier
SCITooltipModifier
SCICursorModifier
SCIRolloverModifier
SCILegendModifier

◆ chartTitle

- (NSString*) chartTitle
readwritenonatomiccopy

Text for chat title.

If you set the property chartTitleView will be removed.

◆ chartTitleAlignment

- (NSTextAlignment) chartTitleAlignment
readwritenonatomicassign

Text aligment for chart title if you use chartTitle.

◆ chartTitleColor

- (UIColor*) chartTitleColor
readwritenonatomicassign

Color text for chart title if you use chartTitle.

◆ chartTitleFont

- (UIFont*) chartTitleFont
readwritenonatomicassign

Font for chart title if you use chartTitle.

◆ chartTitleView

- (UIView*) chartTitleView
readwritenonatomicweak

Custom view for chart title.

If you set the property another properties (chartTitle, chartTitleFont, chartTitleColor, chartTileAligment) don't work.

◆ gestureController

- (SCIGestureController* _Nonnull) gestureController
readwritenonatomicstrong

Sets or gets gestures handler on surface.

◆ renderableSeries

- (SCIRenderableSeriesCollection*) renderableSeries
readwritenonatomicstrong

Exposes the collection of SCIRenderableSeries on the SCIChartSurface.

RenderableSeries are the visual representation of the chart series, while SCIDataSeries are the data representation.

To add a series to a chart, use SCIChartSurface.attachRenderableSeries. Ensure that SCIRenderableSeries DataSeries is an instance of SCIDataSeries to provide the data

See also
SCIFastLineRenderableSeries
SCIDataSeriesProtocol

◆ renderableSeriesAreaBorder

- (SCIPenStyle* _Nonnull) renderableSeriesAreaBorder
readwritenonatomicstrong

Defines chart area border thicknes and color.

surface.renderableSeriesAreaBorder = SCIPenSolid(colorCode: 0xFFF0F050, width: 1)
See also
SCIPenStyleProtocol

◆ renderableSeriesAreaFill

- (SCIBrushStyle* _Nonnull) renderableSeriesAreaFill
readwritenonatomicstrong

Defines background fill color for chart area.

surface.renderableSeriesAreaFill = SCIBrushSolid(colorCode: 0xFFA0A050)
See also
SCIBrushStyleProtocol

◆ renderSurface

- (id<SCIRenderSurfaceProtocol>) renderSurface
readwritenonatomicassign

◆ selectedRenderableSeries

- (SCIRenderableSeriesCollection*) selectedRenderableSeries
readnonatomicstrong

Exposes the collection of selected SCIRenderableSeries on the SCIChartSurface.

RenderableSeries are the visual representation of the chart series, while SCIDataSeries are the data representation.

To add a series to a chart, use SCIChartSurface.attachRenderableSeries. Ensure that SCIRenderableSeries DataSeries is an instance of SCIDataSeries to provide the data

See also
SCIFastLineRenderableSeries
SCIDataSeriesProtocol

◆ viewportManager

- (id<SCIViewportManagerProtocol>) viewportManager
readwritenonatomicstrong

Defines the SCIViewportManager instance which controls the viewport ranges on chart updates.

This property is set to default instance which calculates X and YAxis ranges based on the SCIAxis2D.autoRange property

See also
SCIViewportManager

◆ xAxes

- (SCIAxisCollection*) xAxes
readwritenonatomicstrong

The collection of XAxes when in a multiple Axis scenario.

You can add XAxis to the SCIChartSurface using the SCIChartSurface.attachAxis() function. Ensure that each SCIAxis2D instance has the SCIAxis2D.axisId property set!

See also
SCIAxisCollection
SCIAxis2DProtocol
SCINumericAxis
SCIDateTimeAxis
SCILogarithmicNumericAxis

◆ yAxes

- (SCIAxisCollection*) yAxes
readwritenonatomicstrong

The collection of YAxes when in a multiple Axis scenario.

You can add XAxis to the SCIChartSurface using the SCIChartSurface.attachAxis() function. Ensure that each SCIAxis2D instance has the SCIAxis2D.axisId property set!

See also
SCIAxisCollection
SCIAxis2DProtocol
SCINumericAxis
SCIDateTimeAxis
SCILogarithmicNumericAxis

The documentation for this protocol was generated from the following file: