SciChart® the market leader in Fast WPF Charts, WPF 3D Charts, and now iOS Charting & Android Chart Components

Welcome to the SciChart iOS Charts Community Forums!

Please see our Question asking guidelines before posting. You can also find our iOS Charts Documentation in the SciChart iOS SDK Zip.
  – Thanks & regards, SciChart Team

0 votes
22 views

Hi guys,

I am having difficulties setting the background of my bar chart with SCICategoryDateTime X axis since I switched to 2.0.

As far as I understand, just setting the background property of the SCIChartSurface should suffice.
These are all of the things I’ve tried:

1. [self.barSurface setBackgroundColor:[UIColor clearColor]];
2. [self.barSurfaceView setBackgroundColor:[UIColor clearColor]]; 
3. self.barSurface.renderableSeriesAreaFill = [[SCISolidBrushStyle alloc] initWithColor:[UIColor clearColor]];
4. [self.barSurface.renderSurface setIsTransparent:YES];

I didn’t find any other way of setting it, but it still remains black. Any thought on what might cause it?

EDIT: I just found out about this color setting:

[axisStyle setGridBandBrush:[[SCISolidBrushStyle alloc] initWithColor:[UIColor whiteColor]]];

The result I got was a black and white chess board, as shown on the attached picture. I really don’t understand this behaviour. If I set this gridBandBrush to nil, columns are coloured with random colours, so the chart looks like a rainbow. I understand why is this happening but shouldn’t there be a default colour in case brush is nil?

EDIT 2: While debugging using “Capture view hierarchy” in XCode I discovered that render surface is actually white inside debugger. Perhaps it will give more insight to you, it doesn’t mean much to me – I guess it’s because rendering is done on GPU and the context is not available to the debugger.

Best,
Igor

  • Igor Peric asked 1 day ago
  • last active 22 hours ago
0 votes
28 views

Hey guys,

Starting from 2.0 we can have dashed lines in renderable series. I was wondering can we have dashed line annotations as well?

I tried this:

verticalLineAnnotation.style.linePen = [[SCIPenDashed alloc] initWithColor:[UIColor redColor] width:2 withStrokeDashArray:@[@(10.f),@(3.f)]];

and got this build error:

Assigning to 'SCIPenStyle *' from incompatible type 'SCIPenDashed *'

Isn’t SCIPenDashed a SCIPenStyle?

Best,
Igor

  • Igor Peric asked 1 day ago
  • last active 18 hours ago
0 votes
0 answers
36 views

Hi, guys

I have some data series like:

[[SCIXyDataSeries alloc] initWithXType:SCIDataType_DateTime
                                 YType:SCIDataType_Double
                             SeriesType:SCITypeOfDataSeries_XCategory];

Also my Y axis is kind of class SCINumericAxis

So my question is

if i’m trying add value to the series

[volumeSerie appendX:SCIGeneric(bar.time) Y:SCIGeneric([bar.volume doubleValue])];

and my bar.volume is bigger than 2 147 483 648 (float limit as i’m know). It’s leads to a axis range crash. Like on the attached image.

So what should i use to handle huge values?
Like a billions and more

Best regards,
Sushynski Andrei

0 votes
52 views
  1. Is it possible to display the peak value instead of X and Y values at touch point using a modifier ? If so, how can I achieve this ? (Both Rollover and Cursor modifier only shows the X and Y values)

  2. In real time chart, since the values are updating continuously, the cursor modifier is constantly disappearing and appearing and is not stationary. How can I keep the cursor modifier always visible ?

  • Chui asked 2 weeks ago
  • last active 2 weeks ago
0 votes
65 views

Hi, guys

My x axis is SCICategoryDateTimeAxis class type. And it’s limited by VisiableRangeLimit like:

[xAxis setVisibleRangeLimit:[[SCIDoubleRange alloc] initWithMin:SCIGeneric(firstItem – (lastItem – priorItem))
Max:SCIGeneric(lastItem + (lastItem – priorItem))]];

Also for scrolling my content inside chart:

SCIZoomPanModifier * zpm = [[SCIZoomPanModifier alloc] init];
[zpm setModifierName:@"PanZoom Modifier"];
[zpm setClipModeX:SCIZoomPanClipMode_ClipAtExtents];

Like a description SCIZoomPanClipMode_ClipAtExtents says:
“forces the panning operation to stop suddenly at the extents of the data” – but it’s not working constantly.
Sometimes it’s allow to scroll outside the range. Like on the attached image.

So my question is how to limit scrolling by min and max value?

Best regards,
Sushynski Andrei

0 votes
95 views

Hi!

I tried implementing pinch zooming for real time chart in the demo project(FIFO Performance Demo and ECG Monitor Demo) and found that it’s not possible.

I used the following code:

self.surface = [[SCIChartSurface alloc] initWithView: self.sciChartSurfaceView];
SCIPinchZoomModifier * pzm = [[SCIPinchZoomModifier alloc] init];
[pzm setModifierName:@”PinchZoom Modifier”];
self.surface.chartModifier = pzm;

If it is so, then how can I achieve it ?

  • Chui asked 3 weeks ago
  • last active 2 weeks ago
0 votes
83 views

Hi,

I am trying to get the index of a specific date in CategoryDateTime X axis. I was trying to use this approach:

int idxOfMaxAvgScoreDate = [[self.dataSeriesAvg xValues] indexOf:SCIGeneric(dateOfMaxAvgScore) IsSorted:YES SearchMode:SCIArraySearchMode_Exact];

but it was returning -1. My guess is that comparison operator for the DateTime type is “too precise”, so some kind of range check needs to be done, similarly to common practice when comparing two floats:

if (abs(float1-float2) < epsilon)

instead of

if (float1 == float2)

I tried using SCIArraySearchMode_Nearest, but without success – most of the times I get a column right after the one I need (desiredIndex+1).

While trying to implement index lookup myself by iterating through the dataSeries.xValues I noticed that DateTime type decoder is not there for individual elements of SCIArrayControllerProtocol. Autocompletion for line below

[[self.dataSeries xValues] valueAt:i].

offers all typed of data decoding (int16, int32, char…) except dateTime. Is this the way it is supposed to be?

I tried solving it this way:

SCIGenericDate([[self.dataSeries xValues] valueAt:i])

but the date I am getting is always 01-01-1970. This indicates that entries in the X axis are not DateTime elements, which is not true, since this is my X axis:

id<SCIAxis2D> xAxis = [[SCICategoryDateTimeAxis alloc] init];

Any help, or even just thoughts and comments, would be highly appreciated.

Thanks,
Igor

  • Igor Peric asked 3 weeks ago
  • last active 3 weeks ago
0 votes
79 views

Hello again! 🙂

This time I am trying to draw marker for a maximum numeric data value in chart with CategoryDateTime X axis.

I have my X axis defined like this:

id<SCIAxis2D> xAxis = [[SCICategoryDateTimeAxis alloc] init];

and I am trying to draw a marker in draw() method of a custom modifier using this code:

 id<SCIRenderPassData> data = [_rSeries currentRenderPassData];
 id<SCICoordinateCalculator> xCalc = [data xCoordinateCalculator];
 id<SCICoordinateCalculator> yCalc = [data yCoordinateCalculator];
 NSLog(@"Is category calc: %d", [xCalc isCategoryAxisCalculator]);
 double xCoord = [xCalc getCoordinateFromDate:_xValue];
 double yCoord = [yCalc getCoordinateFrom:_yValue];
 [_marker drawToContext:context AtX:xCoord Y:yCoord];

My _xValue is computed and set from outside and is for sure is a valid date on X axis for which I need to draw the marker on.

My problem is that:

  1. xCoord is always 0.
  2. NSLog line prints 0 to debug console, meaning that xCalc is not CategoryAxisCalculator. I suspect this is why xCoord is always 0.

My questions are:

  1. Am I trying to compute xCoord the right way? I need it for drawing the marker and I have a date for which I want marker to be placed on.
  2. Why [data xCoordinateCalculator] returns something that is not CategoryAxisCalculator even though my axis is a category axis? Is this expected behaviour?

Looking forward to your always useful reply. 🙂

  • Igor Peric asked 4 weeks ago
  • last active 4 weeks ago
0 votes
102 views

Hi,

I’m trying to achieve the looks of DateTimeCategory XAxis as shown on uploaded screenshot.

Formatting a single row of tick labels is not a hard task (setTextFormatting). The problem arises when there are 2 rows with same frequency (days of the week and dates) and third row with lower frequency (years).

I tried using new line character in text formatting property to break the line for days and dates and it didn’t work. I also tried having two axes bound to the same data series, each one having different formatting and majorDelta, but it seems that they don’t stack up (only first one added is shown).

Any ideas?

  • Igor Peric asked 1 month ago
  • last active 4 weeks ago
0 votes
101 views

Hi,

I have understood that you will start supporting macOS in the near future. Are we talking Q3, Q4 or 2018?

Any hint, even one with lots of caveats will be greatly appreciated…

Thanks
/Peter

0 votes
103 views

Hi there.

It’s has been asked here:
https://www.scichart.com/questions/question/custom-annotation

So, Is it possible to draw dashed line annotation at the current version 1.2.3.982?

Best regards,
Sushynski Andrei

0 votes
105 views

Hi, guys

Is there possibility to show tooltip by simply changing switch at the settings?
Not by tapping at the chart area as it implemented now.

Best regards,
Sushynski Andrei

0 votes
102 views

Hi, guys

I’m working with SCIDateTimeAxis type of the X-axis. So my question Is there possibility of skipping non-value period?

Best regards,
Sushynski Andrei

1 vote
120 views

I’m trying to render a column chart with multiple series. I want the two series to show side-by-side. See the reference image attachment for how I want it to look.

However, when I add a second series to a surface, the two series overlap and draw over each other, such that you can ‘t see some of the column data points.

Is there a way to draw multiple series that don’t overlap?

While I’m here, a have a couple of more questions:

• Is there a way to show more of the values on the time/date series X-axis . Notice in the SciChart column chart that is attached it shows every third value on the X-axis (Jan, April, July, October). It would be great if I could show every two, or all for each data point.

• For a time/date series X-axis, can I show a different representation of the time/date values? Specifically, I want to show, e.g.

Jan 17

rather than

01-2017

Presumably one would specify a different date formatter but I only see how to do variations of “MM-dd-yyy”. I want to show values as textual rather than numeric.

• Is there a way to extend the Y-axis to go higher?
In the SciChart column chart attachment, the Y-axis goes up to 100, but the values go higher. I would like to show the the Y-axis going up to 120.

• Is there a way to change the interval of the Y-axis?
Instead of showing every 20 values, can I show every 25 values?

Thanks.

  • doughill asked 2 months ago
  • last active 1 month ago
0 votes
120 views

Hi, guys

it seems that i had found a mistake:

At SCICursorModifierStyle class if i try to set up axisVerticalTooltipCornerRadius property it lead to changing of axisHorizontalTooltipCornerRadius

Please take a look

Best regards,
Sushynski Andrei

0 votes
114 views

Hi,

I’m trying to limit the x-axis panning up to an annotation that I’ve drawn on the graph. This annotation can be beyond the current data’s position (i.e. data’s timestamp is at 5/4/2017 11:00:00, annotation’s position is at 5/4/2017 16:00:00). Is there a method, or any way that I can use to limit the x-axis panning up to the annotation’s position instead of limiting it to the data series’ max X?

Regards.

0 votes
133 views

The SciChartDemo compiles and runs just fine out of the box. If I change any of the .m files from “Objective-C” to “Objective-C++” and try to compile I have a linker error:

No matching function for call to ‘SCI_constructGenericType’
Expanded from macro ‘SCIGeneric’
Candidate function not viable: no known conversion from ‘const char [2]’ to ‘char *’ for 2nd argument

If I cast 2nd argument in the macro to (char *) I get the following error:

“SCI_constructGenericType(void*, char*)”
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Am I mistaken if I believe that this has to do something with C++ name mangling? More specifically: how can I use SCIGeneric(x) macro in Objective-C++ file?

Thanks.

  • Igor Peric asked 2 months ago
  • last active 2 months ago
0 votes
117 views

Hi,

Please take a look at the attached screenshot first.

I have a chart configured to draw some data. I need to draw SCIAxisMarkerAnnotation on Y axis. And it seems that annotation has alignment by right side of axis area. Is there a possibility to change it to left side of axis area?

1 vote
190 views

Hello,

Out team have several question about the framework:

  1. Is there a way to make SCIChartSurfaceView background transparent so that the user could see underlying views? We tried using background brush of clear color on SCIChartSurface and making SCIChartSurfaceView backgroundColor transparent but no avail.

  2. Is it possible to add translate/rotate/scale animation to markers/annotations from code?

  3. When using gradient brush with mountain renderable series we found a strange visual artifact (“Gradient artifact” image). Is there a way to fix it?

Best regards,
Vasiliy

0 votes
241 views

Hi,

I’ve been looking through ways to have to y-Axis scale for really small changes/values.

For example, I’m attempting to plot 10 values between 0.99300 to 0.99400, and the changes between points can vary between 0.001 to 0.0001 or so (basically, really small changes)

However, my y-Axis seems to always start at 0 and the y-Axis major ticks are always at most a 0.1 difference, making the graph look flat.

I’d like to achieve the following:
– Scale to the smallest value i can scale to.
– Have my y-Axis to not necessarily start at 0.

I’ve tried the following:

Setting up y-Axis:

    self.yAxis = [SCINumericAxis new];
    [self.yAxis setStyle:axisStyle];
    self.yAxis.axisId = @"yAxis";
    [self.yAxis setGrowBy:[[SCIDoubleRange alloc]initWithMin:SCIGeneric(0) Max:SCIGeneric(0.1)]];
    [self.yAxis setAutoRange:SCIAutoRange_Always];
    [self.chartSurface attachAxis:self.yAxis IsXAxis:NO];

Regards.

1 vote
204 views

Hi,

I’m attempting to plot on a mountain graph with a DateTimeAxis for the x-axis and I noticed that the plotted time is inaccurate.

The data that am attempting to put in has the following NSDate value: 2017-01-06T10:09:25+0000
Correct me if am wrong, but I believe the time on the axis that ought to be displayed should follow the device’s system timezone? In my case, it is +0800, setting the time to be about 6:09:25 pm

However, the plotted time ends up showing the point to be plotted at 2:09:25 instead.

I’ve tested with a date formatter and it displays the time as it should (6:09:25 pm).
I don’t think I configured anything regarding the axis’s time format, and the insertion of data was done as below:

[self.mountainSeries appendX:SCIGeneric(m.timestamp) Y:SCIGeneric(m.mid)];
[self.chartSurface invalidateElement];

Also, to add on, if I were to extract the XMax value from the axis (in this case, is the timestamp as above), it returns me as such: 2017-01-06 18:09:25 +0000

Thank you.

3 votes
351 views

I will continue to this question here, but with more details. So I need to be able to drag axis annotations separately. Is there any possible way to achieve this in iOS? Basically I subclassed SCIAxisMarkerAnnotation and implemented my own -onPanGesture:At: but it does not separate instances of the class when I try to drag one of the annoation. All moves to same place. How can I detect which annotation is being dragged?

CDAxisMarkerAnnotation.h

#import <SciChart/SciChart.h>
@class CDAxisMarkerAnnotation;

@protocol CDAxisMarkerAnnotationDelegate <NSObject>

- (void)axisMarkerAnnotation:(CDAxisMarkerAnnotation *)axisMarkerAnnotation
           didPanToAxisValue:(double)axisValue;

@end

@interface CDAxisMarkerAnnotation : SCIAxisMarkerAnnotation

@property (weak, nonatomic) id<CDAxisMarkerAnnotationDelegate> delegate;

@end

CDAxisMarkerAnnotation.m

#import "CDAxisMarkerAnnotation.h"

@implementation CDAxisMarkerAnnotation

- (BOOL)onPanGesture:(UIPanGestureRecognizer *)gesture At:(UIView *)view
{
    if (![view isKindOfClass:[SCIChartSurfaceView class]]) {
        return [super onPanGesture:gesture At:view];
    }

    switch (gesture.state) {
        case UIGestureRecognizerStateBegan:
        case UIGestureRecognizerStateChanged:
        case UIGestureRecognizerStateEnded: {
            CGPoint location = [gesture locationInView:view];
            id<SCIRenderSurface> renderSurface = [self.parentSurface renderSurface];
            CGPoint pointInChart = [renderSurface pointInChartFrame:location];
            id<SCICoordinateCalculator> yCalculator = [self.yAxis getCurrentCoordinateCalculator];
            double valueForYAxis = [yCalculator getDataValueFrom:pointInChart.y];
            [self.delegate axisMarkerAnnotation:self didPanToAxisValue:valueForYAxis];
            break;
        }
        default: {
            break;
        }
    }
    return YES;
}

@end

Thanks,
Irmak

0 votes
282 views

Hi,

I have an issue regarding to SCIAxisMarkerAnnotation that I could not find. Can I customise the look of it or should I implement my own axis marker? And can I add another pan gesture to annotation pin so the user can change annotation location on that axis?

Thanks,
Irmak

1 vote
287 views

Hi,

Is there any possible way to get axis value for a point in chart view? I use pan gesture to get the touch location and convert it to its context point but cannot find the value for that CGPoint.

Thanks,
Irmak

0 votes
279 views

Hi,

I’ve encountered an issue with the candlestick graph I’ve drawn that consists of a set of random X date time values – this causes the candlesticks have varying distances from one another.

Rendering the data from an initial set seems to be fine but as I run a NSTimer to add on more points, the body of the new candlesticks seem to be 0. (Note, the date time values are still random but have been made to be set after the last placed point)

In fact, the initial data points that I added see to be rendered ‘body-less’ if it’s within the same visible range as the newly added points. And if I pan along the newly added points, the bodies of some data points will appear at random visible ranges.

Is this a normal behaviour or should I take anything else into consideration?

Here are a couple of my configurations which I think may have affected anything:
1. My XAxis has set its visible range limit mode to ClipMode_Min
2. Candlestick series style data body width is set to be default.
3. I have a the following modifiers set up.

self.xDragModifier = [SCIXAxisDragModifier new];
self.xDragModifier.axisId = @"xAxis";
self.xDragModifier.dragMode = SCIAxisDragMode_Pan;
self.xDragModifier.clipModeX = SCIZoomPanClipMode_ClipAtMin;
[self.xDragModifier setModifierName:@"XAxis DragModifier"];

self.pinchZoomModifier = [[SCIPinchZoomModifier alloc] init];
[self.pinchZoomModifier setModifierName:@"PinchZoom Modifier"];
self.pinchZoomModifier.xyDirection = SCIXYDirection_XDirection;

self.zoomPanModifier = [SCIZoomPanModifier new];
self.zoomPanModifier.clipModeX = SCIZoomPanClipMode_ClipAtMin;
self.zoomPanModifier.xyDirection = SCIXYDirection_XDirection;
[self.zoomPanModifier setModifierName:@"ZoomPan Modifier"];

SCIModifierGroup * gm = [[SCIModifierGroup alloc] initWithChildModifiers:@[self.xDragModifier, self.pinchZoomModifier, self.zoomPanModifier]];
self.chartSurface.chartModifier = gm;

The points are drawing just fine, but the body of the candlestick is not appearing as expected.

Thanks in advance.

  • Elle Yeoh asked 7 months ago
  • last active 6 months ago
1 vote
304 views

Hi,

Am trying to limit the depth in which the user can zoom into and out of the graph. I came across the property minimalZoomConstrain in the header file and also the documentation and had attempted to use it.

The axis in question is a DateTimeAxis and I would want to limit the zoom in depth to 30 seconds and the zoom out the about 3 months. I understand that the type it takes is the GenericType, where I will have to use the SCIGeneric(x) to assign the value, but what value x am I required to use in this case?

I’ve tried the values ’30′(assuming it takes NSTimeInterval) and even attempted to pass in a NSDate value but nothing seems to work.

Thank you.

  • Elle Yeoh asked 8 months ago
  • last active 8 months ago
2 votes
341 views

Hi,
I am currently trying the iOS Charting Library and want to implement a Column series with the drill-down functionality (when touching one of column points by end user). Does the charting component supports the hit-testing or selection feature to determine which point has been clicked at runtime?
Thanks!
Liza

  • liza yudup asked 8 months ago
  • last active 8 months ago
1 vote
357 views

Is it possible to disable editing annotations via user drag?

  • a_edunov asked 10 months ago
  • last active 10 months ago
1 vote
365 views

Hello!
I tried to draw relative line annotations but can’t get expected behavior.

I have a chart with date x axis and numeric y axis. I want to draw line from (x1, y1) to (x2, y2) where:
x1 = deal.startQuoteDate
y1 = deal.startQuoteRate
x2 = deal.endQuoteDate
y2 = deal.startQuoteRate

func activeDealAnnotations() -> [SCILineAnnotation] {
    return bnd_activeDeals.map { deal in
        let lineAnnotation = SCILineAnnotation()
        lineAnnotation.xAxisId = self.xAxisId
        lineAnnotation.yAxisId = self.yAxisId
        lineAnnotation.coordMode = .Relative
        lineAnnotation.style.linePen = SCIPenSolid(color: UIColor.whiteColor(), width: 0.5)
        lineAnnotation.xStart = SCIGeneric(deal.startQuoteDate)
        lineAnnotation.xEnd = SCIGeneric(deal.endQuoteDate)
        lineAnnotation.yStart = SCIGeneric(deal.startQuoteRate)
        lineAnnotation.yEnd = SCIGeneric(deal.startQuoteRate)
        return lineAnnotation
    }
}

I also tried different configurations of the line annotation to check the validity of x and y values.

lineAnnotation.coordMode = .RelativeX
lineAnnotation.xStart = SCIGeneric(0)
lineAnnotation.xEnd = SCIGeneric(1)
lineAnnotation.yStart = SCIGeneric(deal.startQuoteRate)
lineAnnotation.yEnd = SCIGeneric(deal.startQuoteRate)

lineAnnotation.coordMode = .RelativeY
lineAnnotation.xStart = SCIGeneric(deal.startQuoteDate)
lineAnnotation.xEnd = SCIGeneric(deal.startQuoteDate)
lineAnnotation.yStart = SCIGeneric(0)
lineAnnotation.yEnd = SCIGeneric(1)

lineAnnotation.coordMode = .RelativeY
lineAnnotation.xStart = SCIGeneric(deal.endQuoteDate)
lineAnnotation.xEnd = SCIGeneric(deal.endQuoteDate)
lineAnnotation.yStart = SCIGeneric(0)
lineAnnotation.yEnd = SCIGeneric(1)

The lines draws at expected parts of the chart. Now I’m sure that the values are valid and the problem is in the configuration.

Could you help me to do it right?

  • a_edunov asked 10 months ago
  • last active 10 months ago
0 votes
429 views

It would be nice to have an access to repo through CocoaPods. You can create a private spec repo and share with developers. https://guides.cocoapods.org/making/private-cocoapods.html

  • a_edunov asked 10 months ago
  • last active 10 months ago
1 vote
440 views

I want to modify the tooltip for data points. For example, I’d like to not show the line that goes down to the X Axis, and the associated tooltip that shows the X cursor location in the X axis area.

Is there a way to do this?

  • doughill asked 10 months ago
  • last active 10 months ago
1 vote
411 views

I want to style one of the data point bars in a column chart to be a different color. Is there any way to do this?

  • doughill asked 10 months ago
  • last active 10 months ago
1 vote
411 views

I’m trying to create a horizontal bar chart, with bars starting at 0 point on the left then going to the right. I do this by putting the X axis at the left and the Y Axis on the bottom. However, setting the X Axis in the Left or Right area still produces a bar chart with the bars starting at 0 on the right and going left.

I thought I could make the Y Axis flipped and this might help. For example, there’s a property called ‘isAxisFlipped’ in SciAxis2D protocol. However, calling has no effect because is says the SciNumericAxis hasn’t implemented this method. I tried subclassing SciNumericAxis and overriding the isAxisFlipped method myself to return true. However, this has no effect as I don’t see this method ever getting called by anyone else.

So, is there a way to do horizontal columns/bar that go left to right?

  • doughill asked 10 months ago
  • last active 10 months ago
1 vote
805 views

I’ve got error message during compilation:

 ld: bitcode bundle could not be generated because '.../Frameworks/SciChart.framework/SciChart' was built without full bitcode. All frameworks and dylibs for bitcode must be generated from Xcode Archive or Install build for architecture armv7

I temporary disabled bitcode for target. Will you fix it in the next build?

  • a_edunov asked 11 months ago
  • last active 9 months ago
2 votes
571 views

From your documentation:

4.9 Annotations

SciChart features a rich Annotations API, that allows you to place UIKit UIElements over the chart.
SciChat provides a number of built-in annotations, but you can also create your own.

SCIBoxAnnotation, SCILineAnnotation and SCITextAnnotation are cool, but sometimes it’s not enough.

Is it possible to render UIView on the chart (at least UIImage)?
Is it possible to draw dashed line annotation?
Could you provide an example of creating custom annotation class?

  • a_edunov asked 11 months ago
  • last active 2 months ago
1 vote
516 views

Hello!

Please take a look at the attached screenshot first.

I have a chart configured to draw real-time trading data. X axis type is DateTime. Y axis type is Float. I need to draw vertical expiration time line.

I tried to draw coordinate relative line annotation as follows:

var date: NSDate = NSDate()

let lineAnnotation = SCILineAnnotation()
lineAnnotation.xAxisId = self.axisXId
lineAnnotation.yAxisId = self.axisYId
lineAnnotation.coordMode = .SCIAnnotationCoord_RelativeX
lineAnnotation.style.linePen = SCIPenSolid(color: Style.Chart.ExpirationDateLine.Color, width: Style.Chart.ExpirationDateLine.Width
lineAnnotation.xStart = SCI_constructGenericTypeWithInfo(&date, .DateTime)
lineAnnotation.xEnd = SCI_constructGenericTypeWithInfo(&date, .DateT            

self.chartSurface.annotation = lineAnnotation
self.chartSurface.invalidateElement()

I tried to play with different coordMode values. Line does not appear. Could you help me with this task?

  • a_edunov asked 11 months ago
  • last active 11 months ago
1 vote
452 views

Hello!

Great work, thanks a lot for this framework!

Could you provide an example of animated inserting of a new point? My goal is to implement interpolation between previous retrieved and last point on the real-time line chart.

  • a_edunov asked 11 months ago
  • last active 11 months ago
Showing 37 results
STAY UPDATED
Signup now and we’ll keep you updated with product developments and you will be notified the moment SciChart iOS Charts is released and available.
STAY UPDATED
Signup now and we’ll keep you updated with product developments and you will be notified the moment SciChart Android Charts is released and available.
THANK YOU
Your details have been received.
We like to make sure we only send information to clients who want to hear from us, so if you check your email now, you will find a confirmation email from us. Please click the confirm link and you'll will be added to our updates.