this is crash log just scroll left kline . please tell me how to deal with . (lldb) bt
thread
1 , queue = ‘com.apple.main-thread’, stop reason = EXCBADACCESS (code=1, address=0x0) frame
0 : 0x000000011290beb0 SciChart-[p_SCI_29RJjaaEk0 prs_rB:A:B:D:] + 772 frame 1: 0x000000011290b9f8 SciChart-[pSCI29RJjaaEk0 oexecuteMode:XColumn:YColumn:PointRange:VisibleRange:ViewPortWidth:LastPointSeries:isCategory:] + 684 frame
2 : 0x0000000112962c24 SciChart-[SCIXyDataSeries toPointSeriesWithResamplingMode:SCIIndexRange:ViewportWidth:IsCategoryAxis:VisibleRange:Resampler:] + 332 frame 3: 0x0000000112924420 SciChart+[pSCI29ASj923jdOIJIO29 scrrSWXA52f:A:B:C:D:E:F:] + 792 frame
4 : 0x0000000112923f48 SciChart-[p_SCI_29ASj923jdOIJIO29 scr_prDws:A:] + 1160 frame 5: 0x0000000112922b34 SciChart-[pSCI29ASj923jdOIJIO29 scrrL32e23:] + 212 frame
6 : 0x00000001128c5680 SciChart-[SCIChartSurface onRenderSurfaceDraw] + 220 frame 7: 0x000000011293e39c SciChart-[SCIRenderSurfaceBase onRenderTimeElapsed] + 240 frame
8 : 0x0000000112951240 SciChart-[SCIOpenGLRenderSurface onRenderTimeElapsed] + 192 frame 9: 0x0000000114964254 GPUToolsCore-[DYDisplayLinkInterposer forwardDisplayLinkCallback:] + 176 frame
10 : 0x0000000187453710 QuartzCoreCA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) + 672 frame 11: 0x0000000187507c5c QuartzCoredisplaytimercallback(CFMachPort, void, long, void*) + 240 frame
12 : 0x00000001834b4290 CoreFoundation__CFMachPortPerform + 188 frame 13: 0x00000001834cf000 CoreFoundationCFRUNLOOPISCALLINGOUTTOASOURCE1PERFORMFUNCTION_ + 56 frame
14 : 0x00000001834ce704 CoreFoundation__CFRunLoopDoSource1 + 440 frame 15: 0x00000001834cc1d8 CoreFoundation__CFRunLoopRun + 2196 frame
16 : 0x00000001833ebe58 CoreFoundationCFRunLoopRunSpecific + 436 frame 17: 0x0000000185298f84 GraphicsServicesGSEventRunModal + 100 frame
18 : 0x000000018ca6b67c UIKit`UIApplicationMain + 236
frame
19 : 0x00000001034ce07c FXChatmain at AppDelegate.swift:15:20 frame 20: 0x0000000182f0856c libdyld.dylibstart + 4
- ke zhang asked 5 years ago
- last active 5 years ago
It seems most of the modifiers bring up tooltip data with a pan, and then it goes away when the user lifts their finger. Is there any way to bring up tooltip data with a tap (and does not go away when the finger has lifted)? The main problem that we’re trying to solve is that we would like to be able to pan to look at the chart (and don’t want an axis pan), but would also like to bring up tooltip data.
- Carolyn asked 5 years ago
- last active 5 years ago
Hello.
We updated scichart to 2.5.0 version and got issue:
We have SCIAxisMarkerAnnotation with market line and set markerLinePen:
let mainDashPattern: [NSNumber] = [1.1, 1.0, 1.1, 1.0]
style.markerLinePen = SCISolidPenStyle(color: mainBlack15, withThickness: 1.0, andStrokeDash: mainDashPattern)
Sometimes, after create new chart, all lines with strokeDash colored with solid black color.
I added screenshots.
Thanks,
Alexey.
- Alexey Moshkin asked 5 years ago
- last active 4 years ago
Hello.
It’s very strange, but chart can not be zoomed with pinch, only by double tap fitting full screen.
And when trying to zoom app freezes and CPU load became 100%.
func installChart() {
sciChartSurface = SCIChartSurface(frame: self.view.bounds)
sciChartSurface?.translatesAutoresizingMaskIntoConstraints = false
self.vGraphBox.subviews.forEach({ $0.removeFromSuperview() })
self.vGraphBox.addSubview(sciChartSurface!)
NSLayoutConstraint.activate([
sciChartSurface!.leftAnchor.constraint(equalTo: self.vGraphBox.leftAnchor),
sciChartSurface!.rightAnchor.constraint(equalTo: self.vGraphBox.rightAnchor),
sciChartSurface!.bottomAnchor.constraint(equalTo: self.vGraphBox.bottomAnchor),
sciChartSurface!.topAnchor.constraint(equalTo: self.vGraphBox.topAnchor)
])
// Add the SCIChartSurface as a subview
self.vGraphBox.addSubview(sciChartSurface!)
let xAxis = SCILogarithmicNumericAxis()
xAxis.growBy = SCIDoubleRange(min: SCIGeneric(0.1), max: SCIGeneric(0.1))
xAxis.scientificNotation = .logarithmicBase
//xAxis.textFormatting = "#.#E+0"
xAxis.logarithmicBase = 10.0
xAxis.visibleRange = SCIDoubleRange(min: SCIGeneric(100), max: SCIGeneric(22000.0))
let yAxis = SCINumericAxis()
yAxis.autoRange = .never
yAxis.visibleRange = SCIDoubleRange(min: SCIGeneric(-300.0), max: SCIGeneric(0.0))
lineRenderableSeries.dataSeries = self.dataSeries
lineRenderableSeries.strokeStyle = SCISolidPenStyle(colorCode: 0xFFE13219, withThickness: 1)
//self.sciChartSurface?.chartModifiers.add(pinchZoomModifier) //Causes freeze
self.sciChartSurface?.chartModifiers.add(SCIZoomPanModifier())
self.sciChartSurface?.chartModifiers.add(SCIZoomExtentsModifier())
SCIUpdateSuspender.usingWithSuspendable(sciChartSurface!) {
self.sciChartSurface?.xAxes.add(xAxis)
self.sciChartSurface?.yAxes.add(yAxis)
self.sciChartSurface?.renderableSeries.add(self.lineRenderableSeries)
self.sciChartSurface?.renderableSeries.add(self.lineRenderableSeriesMax)
}
}
- Kirey Vadim asked 5 years ago
- last active 4 years ago
So I want to draw multiple charts so is there any way I can have stacked yAxes like yAxis 2 should be drawn below yAxis1. I have gone through your example and there I got that we can add multiple surface but its becoming difficult for us to show a crosshair on all surfaces since we have a custom cross hair. Can you guide on same. Thanks in advance
- Manish Malviya asked 5 years ago
- last active 4 years ago
So for both SCIZoomPanModifier and SCIXAxisDragModifier you can set a clip mode, that will cause the graph to not zoom in if you try to scroll past the edges.
This is not possible for the y-axis however, so everytime anyone scrolls up or down to far, the graph zooms in, which is not useful to anyone ever
Is there any way to change this behaviour at all?
Thanks in advance
- Hubert Weid asked 5 years ago
- last active 4 years ago
I am considering applying server-side licensing for my javerScript application.
In the document below, there is a phrase “Our server-side licensing component is written in C++.”
(https://support.scichart.com/index.php?/Knowledgebase/Article/View/17256/42/)
However, there is only asp.net sample code on the provided github.
(https://github.com/ABTSoftware/SciChart.JS.Examples/tree/master/Sandbox/demo-dotnet-server-licensing)
I wonder if there is a sample code implemented in C++ for server-side licensing.
Can you provide c++ sample code?
Also, are there any examples to run on Ubuntu?
- Vikas Ahuja asked 5 years ago
- last active 2 months ago
i want to implement a custom modifier to track the users touch, similar to rollover but without displaying a view
I tried to do this by implementing SCIGestureModifier and overriding all the onTouches methods, but – no matter the user behaviour – the modifier will always receive an onTouchesCancelled event after about a second and receive no more of these events after that.
What does work is implement onPanGesture to actually track all the user’s movement but i don’t see any way of how you would receive a touch up event this way (which i do need)
Is there any fundamental misunderstanding on how this should work on my side?
- Hubert Weid asked 5 years ago
- last active 5 years ago
Hi
I have a SCIFastLineRenderableSeries backed by data in SCIXyDataSeries.
I setup FIFO to 300 (this just a number I may increase, but it stores 30+ seconds of data)
x data is time stamp.
each time I have new data, I set a new visibleRange to show about 30 seconds of data on screen
xAxis.visibleRange = [[SCIDoubleRange alloc] initWithMin:SCIGeneric(secondSinceStart-31) Max:SCIGeneric(secondSinceStart)];
So this will scroll along showing latest 30 seconds of data. And that’s great.
But I want to scroll to the left to view the older data. because of the visibleRange is set I am not able to touch the axis labels and do anything)
how do I set the visibleRange or maybe not set it, so I can enable the scroll.
Here is the drag modifier I use , but I think it does not do anything either because of the visibleRange
SCIXAxisDragModifier * xAxisDragmodifier = [SCIXAxisDragModifier new];
xAxisDragmodifier.dragMode = SCIAxisDragMode_Pan;
xAxisDragmodifier.clipModeX = SCIClipMode_None;
Thanks
- Jeremy H asked 5 years ago
- last active 4 years ago
We have a graph surface with some point markers on it and we want to show a custom tooltip every time the user taps on a point marker. So far I’ve used a UITapGestureRecognizer, convert the touchpoint in the chart frame and for each of the renderable series perform a HitTestAtX with a radius (I’ve tried 1, 5 and 30) but it always returns true, even if I tap on an area where there’s a gap in the chart. Here’s some sample code:
SCIHitTestInfo hitTestInfo = renderableSeries.HitTestProvider.HitTestInterpolateModeAtX(touchPoint.X, touchPoint.Y, 30, renderableSeries.CurrentRenderPassData);
if (hitTestInfo.match)
{
Console.WriteLine($"Tapped {hitTestInfo.xValue} {hitTestInfo.yValue} with index {hitTestInfo.index} of the series {renderableSeries.DataSeries.SeriesName}");
var elementSeries = Model.BottomRightLegendList.FirstOrDefault(tup => tup.DataSeries.SeriesName == renderableSeries.DataSeries.SeriesName);
var element = elementSeries.GraphElement;
if (element != null)
{
matchedElements.Add(element);
}
}
Why is the “match” property always true, even if there are no Point Markers in the radius?
- Lazar Nikolov asked 5 years ago
- last active 5 years ago
Hello there
I’m looking for any solution to work with milliseconds timestamps (like that one 1563448997279), but haven’t found anything yet.
Is it possible to handle them without losing precision?
Solutions like drop milliseconds not working for me.
One more question to developers:
What is the difference in SCIDataType_DateTime and SCIDataType_SwiftDateTime?
In source code i only found this:
@field SCIDataType_DateTime – NSDate
- Kirey Vadim asked 5 years ago
- last active 5 years ago
How to make chart axis (date axis in my case) to move with scrolling?
Because currently labels staying on it’s positions and just refreshing its values.
let xAxis = SCIDateTimeAxis()
xAxis.axisId = ChartWrapper.SURFACE_MAIN_X_AXIS_ID
xAxis.autoRange = .never
xAxis.visibleRange = sharedXRange
xAxis.style.drawMajorBands = false
xAxis.style.drawMajorTicks = false
xAxis.style.drawMinorTicks = false
xAxis.style.drawMinorGridLines = true
xAxis.textFormatting = "HH:mm:ss"
xAxs.style.drawLabels = true
Best regards, Vadim
- Kirey Vadim asked 5 years ago
- last active 4 years ago
I want to develop a rollover in my IOS application, like the example of Using RolloverModifier. However, the axis label & tooltip display of rollover in this example is static, I want to customize a the the label & tooltip that I want, .xib file or coding to develop also fine.
Can anyone help or give suggestions to my problems? Thanks.
- Gumbo F asked 5 years ago
- last active 2 years ago
I am creating point data series using SCIXyScatterRenderableSeries.
I need to tap on specific data points and display pop over or some view on top of it. Pop over provides information regarding that point.
How can I implement that in iOS.
- Vikas Ahuja asked 5 years ago
- last active 4 years ago
Hello,
I am using mountain chart to draw some data. First time open the chart screen, the graph plots properly. If we do scroll forward the graph x-axis last label is missing. If we do scroll backward the graph x-axis first label is missing.
Here I have attached working .swift file.
Note: We are using mountain chart with multiple line series. We are not using stacked mountain chart.
- Abhijeet Upadhyay asked 5 years ago
- last active 4 years ago
Hey all,
is there a way on iOS to export a SciChartSurface to a vector format in order to embed the exported chart into a PDF document? Right now the only thing I can find in the Documentation is exportToUIImage()
. If not – any ideas for a workaround until such feature is implemented?
- Matthias Maurberger asked 5 years ago
- last active 4 years ago
How can I create CustomCategoryLabelProvider?
How can i do this?
This example does not work for me
- Maksim Vitovych asked 5 years ago
- last active 4 years ago
Hello,
The problem is how to sign the X-axis (the time axis).
How can I change the date and time format on the x axis?
Is this possible when I use the SCICategoryDateTimeAxis?
We use the code from example to set the time format
- Maksim Vitovych asked 5 years ago
- last active 2 years ago
Hello,
I am trying to round the corners of the bars produced by a SCIFastImpulseRenderableSeries (pointMarker is hidden). Any suggestions how to do that?
Thanks!
- Alexandru Motoc asked 5 years ago
- last active 4 years ago
Hello.
I have previously asked a question regarding Android and Xamarin (https://www.scichart.com/questions/android/legend-outside-of-chart-area).
Now, I have the same question, but for iOS. Do you have any examples available for taking chart legend outside of chart area on iOS?
Thank you and have a nice day!
Regards,
Paul.
- pauzu asked 5 years ago
I need to do some calculation for data in visible range after zoom. Is there any notification when gesture ends in SCIPinchZoomModifier? If not, then that means I have to build a custom zoom gesture modifier? If so could you show me how pinch zoom is done in SCIPinchZoomModifier so that I don’t need to build everything from scratch? Thanks
- Haoran Xie asked 5 years ago
- last active 4 years ago
I would like to add scrollBar to SCINumericAxis for example xAxis.
I did find documentation:
https://www.scichart.com/documentation/v5.x/webframe.html#Scrollbars.html
But on iOS version, I can’t find numericAxis.Scrollbar is missing
- Andrii Trotsko asked 5 years ago
- last active 5 years ago
Using Following Code to Construct Sync Multiple Graphs
let _rangeSync = SCIAxisRangeSynchronization()
let _zoomExtentsModifierSync = SCIMultiSurfaceModifier(modifierType: SCIZoomExtentsModifier.self)
let _pinchZoomModifierSync = SCIMultiSurfaceModifier(modifierType: SCIPinchZoomModifier.self)
let _xDragModifierSync = SCIMultiSurfaceModifier(modifierType: SCIXAxisDragModifier.self)
let _yDragModifierSync = SCIMultiSurfaceModifier(modifierType: SCIYAxisDragModifier.self)
let _rolloverModifierSync = SCIMultiSurfaceModifier(modifierType: SCIRolloverModifier.self)
func getGraphs() -> [(String,CustomClassThatHoldsData)] {
let keys = Array(historicChats!.data!.keys)
var arrayOfTuples = [(String,CustomClassThatHoldsData)]()
//
for key in keys {
arrayOfTuples.append((key, (self.historicChats?.data![key])!))
}
return arrayOfTuples
}
func drawMultichartWithDefault() {
for data in arrayOfGraphs {
let chart = SCIChartSurface(frame: CGRect(x: 0, y: 0, width: self.stkCharts.frame.width-50, height: 200))
initChart(chart, data.1)
self.stkCharts.addArrangedSubview(chart)
}
}
fileprivate func initChart(_ chart: SCIChartSurface, _ data: VitalHistoryData) {
SCIUpdateSuspender.usingWithSuspendable(chart) {
let xAxis = SCIDateTimeAxis()
xAxis.growBy = SCIDoubleRange(min: SCIGeneric(0.1), max: SCIGeneric(0.1))
let yAxis = SCINumericAxis()
yAxis.growBy = SCIDoubleRange(min: SCIGeneric(0.1), max: SCIGeneric(0.1))
let dataSeries = SCIXyDataSeries(xType: .dateTime, yType: .double)
let dataArray = data.getDataArray()
for tuple in dataArray {
dataSeries.appendX(SCIGeneric(tuple.1), y: SCIGeneric((tuple.0)))
}
let rSeries = SCIFastLineRenderableSeries()
rSeries.dataSeries = dataSeries
rSeries.strokeStyle = SCISolidPenStyle(color: UIColor.green, withThickness: 1.0)
chart.xAxes.add(xAxis)
chart.yAxes.add(yAxis)
chart.renderableSeries.add(rSeries)
chart.chartModifiers = SCIChartModifierCollection(childModifiers: [self._xDragModifierSync, self._yDragModifierSync, self._pinchZoomModifierSync, self._zoomExtentsModifierSync, self._rolloverModifierSync])
self._rangeSync.attachAxis(xAxis)
}
}
On 2 graphs it works quite fine but with the more then 2 graphs it starts lagging
- Atiq Tahir asked 5 years ago
- last active 4 years ago
i am Swift Language
let dragmodifier = SCIZoomPanModifier()
dragmodifier.clipModeY = .clipAtExtents
-OR-
How can i acheive this?
- Atiq Tahir asked 5 years ago
- last active 4 years ago
Hi,
i am Swift Language
=>Senario
i am plotting live ECG Data on SciChart Surface. I have added 9 Graph on Storyboard in a UIScrollView for the Following things
-ECGI
-ECGII
-ECGaVL
-ECGV
-ECGIII
-ECGaVF
-ECGaVR
-Pleth
-RESP
Each of the above has data = [Int]
i had written a custom Class for Plotting Live Data
=>Class Specification
Inherited From UIView in a seperate xib which contains
– A Label For Name of the chart,
– A chart to draw data and a label
– for displaying frame buffer speed
=>Requirement a Single Chart (Chart have no modifier added onit)
=> ISSUE
Everything Works Fine until the scroll start, On Scrolling The chart stop Plotting Data Until the Scroll stops
- Atiq Tahir asked 5 years ago
- last active 4 years ago
I cannot get SCILinearGradientBrushStyle working on a donut chart. Only radial gradients work
Here is my code sample:
let segment = SCIPieSegment()
segment.fillStyle = SCILinearGradientBrushStyle(colorCodeStart: 0xff007aff, finish: 0x4D007aff, direction: .horizontal)
segment.value = 100.0
segment.title = "Segment"
donutSeries.segments.add(segment)
The segment just renders a flat color
- Ryan Chesla asked 5 years ago
- last active 4 years ago
Hi!
I have 2 solutions of xamarin forms using scichart: one of them is the demo from github repo of scichart (2.2.1.839), and the other is my own solution using scichart 2.5.0.946.
The problem is when I attach a labelprovider (the same as the github example) to one of my numerical axes, the app automatically closes on the device (both), neither of the two solutions shows an error or exception.
- felipe parra asked 5 years ago
- last active 4 years ago
Hi,
I wanted to try the V3 beta for iOS in objective-c but I don’t know how to format the string with the new license key.
Neither this (as found here: https://www.scichart.com/beta-edition-of-scichart-mobile-sdk-v3-now-available/):
[SCIChartSurface setRuntimeLicenseKey:@""
"{"
"\"ActivatedBy\": null,"
"\"Customer\": \"Anyone\","
"\"DeveloperCount\": null,"
"\"ExpiryDate\": \"2019-12-21\","
"\"Features\": ["
"\"WPF-2D\","
"\"AND-2D\","
"\"iOS-2D\","
"\"WPF-3D\","
"\"AND-3D\","
"\"iOS-3D\""
"],"
"\"IsTrialLicense\": true,"
"\"KeyCode\":" "gRPFuMCiB0otJzffhGFJO09BtH3drfoDZV5pAkQNv9hyHJsfBsCr42BHRJ/oz2ib2uEgT33IYW3fGKExB4KPUbrNOeKazYrMI8pD5OJVlDoRXuJdY97iUZU2jNHRnXN0cgpBdqcQTWgW/afd9pYwcYT5P22sklCSrtTdwcuyepiLE9Ap9B2ixMVpoB43Yj79g1/yKzgPQaAmW38hjDyByQwxCQ9R88Jt4JqQRVQUhYxj31CFoX7Upm36oP32WGbEEex4E1qHTY+KALouRnA9JQZej13V4MjwF45xuQNiUDbk3RHtyJwWEjwGS9jHh24WiTj1aOaw8PAfBmKZl2FKfKSL7Q7Nu9jtUgZdGUbpZTKYrASpoVQiVk2/+1xAA8dB/7RdsjXVVrXf1RnMg8dNXsY7gcJJ25SF4QmZwqa82Dl+PnXGq0BSvfLaSrSl8uWkimTt0D/FwvaVqvpzomORpStboVNroTAcbaBJRIOK6tZDFwBj3qQV1N470/XW3aKHckN7GrNOpS7xpZ/EM9k=,"
"\"MachineId\": null,"
"\"OrderId\": \"BETA trial key\","
"\"ProductCode\": \"SC-BUNDLE-SDK-PRO\","
"\"SerialKey\": null,"
"\"TicketQuantity\": null"
"}"
""];
or this (old format style):
[SCIChartSurface setRuntimeLicenseKey:@""
"<LicenseContract>"
"<Customer>Anyone</Customer>"
"<OrderId>BETA trial key</OrderId>"
"<LicenseCount>1</LicenseCount>"
"<IsTrialLicense>true</IsTrialLicense>"
"<SupportExpires>2019-12-21</SupportExpires>"
"<ProductCode>SC-BUNDLE-SDK-PRO</ProductCode>"
"<DeveloperCount>null</DeveloperCount>"
"<MachineID>null</MachineID>"
"<SerialKey>null</SerialKey>"
"TicketQuantity>null</TicketQuantity>"
"<Features>[WPF-2D, AND-2D, iOS-2D, WPF-3D, AND-3D, iOS-3D]</Features>" "<KeyCode>gRPFuMCiB0otJzffhGFJO09BtH3drfoDZV5pAkQNv9hyHJsfBsCr42BHRJ/oz2ib2uEgT33IYW3fGKExB4KPUbrNOeKazYrMI8pD5OJVlDoRXuJdY97iUZU2jNHRnXN0cgpBdqcQTWgW/afd9pYwcYT5P22sklCSrtTdwcuyepiLE9Ap9B2ixMVpoB43Yj79g1/yKzgPQaAmW38hjDyByQwxCQ9R88Jt4JqQRVQUhYxj31CFoX7Upm36oP32WGbEEex4E1qHTY+KALouRnA9JQZej13V4MjwF45xuQNiUDbk3RHtyJwWEjwGS9jHh24WiTj1aOaw8PAfBmKZl2FKfKSL7Q7Nu9jtUgZdGUbpZTKYrASpoVQiVk2/+1xAA8dB/7RdsjXVVrXf1RnMg8dNXsY7gcJJ25SF4QmZwqa82Dl+PnXGq0BSvfLaSrSl8uWkimTt0D/FwvaVqvpzomORpStboVNroTAcbaBJRIOK6tZDFwBj3qQV1N470/XW3aKHckN7GrNOpS7xpZ/EM9k=</KeyCode>"
"</LicenseContract>"
];
worked.
I always get the message “Sorry! Your license token appears to be invalid. etc.”
What’s the right way?
Best regards,
Johannes
- Johannes Spannagl asked 4 years ago
- last active 4 years ago
When calling SCIThemeManager.ApplyTheme(Surface, SCIThemeManager.SCIChart_Bright_SparkStyleKey);
within a the code-behind running on the iPhoneSimulator running iOS 13.2, the iOS system throws an Objective-C exception with the following details:
Foundation.MonoTouchException: 'Objective-C exception thrown. Name: NSInternalInconsistencyException Reason: applyThemeProvider: must be implemented in subclass
Although the exact same pattern works without issue on the corresponding Xamarin.Android project and the examples that call this line seem to be OK too, it is not clear from any documentation what this issue could be. Any advice would be appreciated.
- Adrian Harwood asked 4 years ago
- last active 2 years ago
I’m using Xamarin.iOS and the SciChart.iOS NuGet. When adding a LabelProvider
to an axis the iPhoneSimulator with iOS 13.2 crashes without warning or exception back to the phone menu. This issue is not present on Android using the same API usage pattern.
This effect is not just in my own apps but can be replicated by running the latest Examples app on the same simulator. Examples which demonstrate the same behaviour include “Custom Theme”, Stacked Column Side by Side Chart”, “Using Theme Manager”, all of which set the LabelProvider
in the source code.
Is this a known bug? Maybe an incompatibility with the latest version of Xamarin.iOS.
I noticed that this issue has been reported before.
This is a deal breaker for us at the moment as formatting axis labels is pretty crucial.
- Adrian Harwood asked 4 years ago
- last active 4 years ago
I’m updating from Xamarin iOS SciChart v2 to v3 and just hit the issue that i can not use a custom TickProvider because there is no overridable UpdateTicks method.
I could not find any TickProvider code in the v3 Examples so the docs are my only source:
https://www.scichart.com/documentation/ios/current/axis-ticks—tickprovider-and-deltacalculator-api.html
According to the docs, I should override SCINumericTickProvider or SCIDateTickProvider
class CustomNumericTickProvider: SCINumericTickProvider
{
public override void UpdateTicks(SCIDoubleValues minorTicks, SCIDoubleValues majorTicks)
{
//...
}
}
But there is no UpdateTicks method to override.
I tried to override the Update() method instead:
public override void Update()
{
Ticks.Clear();
Ticks.MajorTicks.Add(5);
//...
}
But that is just causing a freeze/crash at runtime.
It’s worth noting that it works well on Android because there is a UpdateTicks method to override.
What should I do?
- Wil O asked 4 years ago
- last active 4 years ago
Hi SciChart team,
there is a working example that implement a Polar Chart type for iOS?
I was unable to find anything in the documentation. Only for WPF platform.
If not, there is a plan to support this kind of chart in next release of the library?
Thanks for the help.
- Samuele Scatena asked 4 years ago
- last active 4 years ago
I don’t know if this affects any earlier versions; but the version my app is using is the 5098.
I created a surface with the following modifiers:
– SCIZoomPanModifier
– SCIZoomExtentsModifier
– SCIPinchZoomModifier
On the SCIZoomExtentsModifier I have **SCIDirection2D_XyDirection ** (also tried YDirection alone)
And when you double tap on the display; only the X direction resizes back down to the proper size. The Y direction is 100% ignored.
Seems to have to do with using a SCILogarithmicNumericAxis on the Y axis. I have tried commenting out all settings applied to the SCILogarithmicNumericAxis; and no change in the ability to re-zoom back to normal size. If I use a SCINumericAxis instead; the Y zooms back out properly…
- Nathanael Anderson asked 4 years ago
- last active 4 years ago
I didn’t see anything in any docs, so I am just wanting to verify this info…
Is this correct that you have to link in and ship the libSwiftCore (+ other swift libs) with an app using SciCharts on iOS? When I added the chart library to my app; the app crashed at startup with missing dynamic load of libSwiftCore.dylib on a real device (emulators run fine).
Enabling ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES in the build settings fixed this issue. But this surprised me that the SciChart library would actually require Swift.
Was this intentional; or did the library somehow pickup an unintentional reference somewhere….
- Nathanael Anderson asked 4 years ago
- last active 4 years ago
Originally my chart would
– create the surface
– setup the chart modifiers
– setup the axis
– add the data (SCIFastLineRenderableSeries).
However, it appears that when you .add(new SCIFastLineRenderableSeries) it recreates all the tooltips on each add, and finally on the very last SCIFastLineRenderableSeries that is inserted will get two duplicate tooltips. This happens both with the default tooltips or custom tooltips.
I finally noticed that some of your examples you setup the modifiers at the end after adding the data. So I moved all the chart modifiers into a separate function and called it after the data is setup, and now the proper number of tooltips appears.
This might either need to be noted somewhere prominent in the iOS docs; or even better the order shouldn’t matter.
- Nathanael Anderson asked 4 years ago
- last active 4 years ago
I found the example for spline drawing, but it’s still missing the gradient brush that mountain series have, how can I add it? thanks
- jose solorzano asked 4 years ago
- last active 4 years ago
I was testing my charts on a simulator and when I naved away and then back to the chart screen the Simulator’s chart was totally black screen; I could move the mouse over the points and the popouts would occur; and your license notice showed in the center of the chart. So it was almost like it thought all the drawing for the chart itself needed to be black on black.
It was always broken on the 2nd or later chart. Restarting the app fixed it. I tried removing all custom settings, and calling the invalidate; and nothing caused it to redraw correctly… Fortunately, when deploying to real devices everything worked correctly. Is this an expected side effect of testing on a simulator, or is their something that I can do to force a hard refresh of the chart…
FYI: The additional debug diagnostics don’t seem to do anything on a simulator, or at least I couldn’t find anywhere it was logged.
- Nathanael Anderson asked 4 years ago
- last active 4 years ago
I’m getting the following crash:
2020-02-14 16:45:43.902812-0500 CommonStock Development[2425:710225] -[SCIRolloverModifier onTouchesCancelled:]: unrecognized selector sent to instance 0x282ffe080
2020-02-14 16:45:43.904098-0500 CommonStock Development[2425:710225] *** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[SCIRolloverModifier onTouchesCancelled:]: unrecognized selector sent to instance 0x282ffe080’
whenever I try to scrub my chart, I must also note that in order for the legend to show, I have to tap really hard on the surface.
This is my code:
func set(data set: SimpleChartDataSet, alternate: SimpleChartDataSet) {
let lineDataSeries = SCIXyDataSeries(xType: .double, yType: .double)
let dashedDataSeries = SCIXyDataSeries(xType: .double, yType: .double)
let group = DispatchGroup()
group.enter()
DispatchQueue.global(qos: .userInteractive).async {
for (index, i) in set.enumerated() {
lineDataSeries.append(x: Double(index), y: Double(i))
}
for (index, i) in alternate.enumerated() {
dashedDataSeries.append(x: Double(index), y: Double(i))
}
group.leave()
}
group.notify(queue: .main) {
let lineSeries = SCIFastMountainRenderableSeries()
lineSeries.zeroLineY = set.min() ?? 0.0
lineSeries.dataSeries = lineDataSeries
lineSeries.strokeStyle = SCISolidPenStyle(color: UIColor.green, thickness: 2.0)
lineSeries.areaStyle = SCILinearGradientBrushStyle(start: CGPoint(x: 0, y: 1), end: CGPoint(x: 0, y: 0), start: UIColor.green, end: UIColor.clear)
let dashedSeries = SCIFastLineRenderableSeries()
dashedSeries.zeroLineY = set.min() ?? 0.0
dashedSeries.dataSeries = dashedDataSeries
dashedSeries.strokeStyle = SCISolidPenStyle(color: UIColor.white, thickness: 2.0, strokeDashArray: [2.0,2.0,2.0,2.0])
SCIUpdateSuspender.usingWith(self.surface) {
self.surface.xAxes.clear()
self.surface.yAxes.clear()
self.surface.renderableSeries.clear()
let xAxis = SCINumericAxis()
xAxis.drawLabels = false
xAxis.drawMajorBands = false
xAxis.drawMajorGridLines = false
xAxis.drawMinorGridLines = false
xAxis.drawMinorTicks = false
xAxis.drawMajorTicks = false
xAxis.drawLabels = false
let yAxis = SCINumericAxis()
yAxis.drawLabels = false
yAxis.drawMajorBands = false
yAxis.drawMajorGridLines = false
yAxis.drawMinorGridLines = false
yAxis.drawMinorTicks = false
yAxis.drawMajorTicks = false
yAxis.drawLabels = false
self.surface.xAxes.add(items: xAxis)
self.surface.yAxes.add(items: yAxis)
self.surface.renderableSeries.add(items: lineSeries, dashedSeries )
self.surface.chartModifiers.add(SCIRolloverModifier())
}
}
}
- jose solorzano asked 4 years ago
- last active 4 years ago
Hi I am using pod ‘SciChart’, ‘3.0.1-nightly.5114’.
Q1)How get selected series instance, index. How to change the color of the selected series.(Using UITapGestureRecognizer and HitTest).
Q2)How to show only Min and Max tick label value of Y Axis. Just want to hide the intermediate tick labels in between Min and Max of Y Axis.
Q3)How to give some spaces at beginning and end of the series in Scichart.
Q4)How to hide the square gray stroke around the Scichart.
- sudhir Ranjan asked 4 years ago
Hi,
i want to disable the pan effect when user long press on chart and allow the user to scroll only in the currently visible range to view the rollover tooltip so that user can see the reading in the current visible range. Once the long press is release, then enable the pan effect again.
Currently when user try to see the reading using rollover tooltip, the whole chart is moving. I have tried removing and adding the zoompanmodifier on long press gesture in ios. But it is not working.
Thank you in advance.
- Manoj Kulkarni asked 4 years ago
Hi,
I am using SciChart_iOS_SDK_3.0.0.5074 with Swift 5.
I want to show string type on X-axis. I am using below code snippet.
class YearsLabelProvider: SCILabelProviderBase<SCINumericAxis> {
var xLabels: [String] = ["Test", "Test", "Test", "Test", "Test", "Test", "Test", "Test", "Test", "Test", "Test", "Test", "Test", "Test"]
func update(_ axis: ISCIAxisCore!) { }
override func formatLabel(_ dataValue: ISCIComparable!) -> ISCIString! {
let index = Int(dataValue.toDouble())
return NSString(string: index >= 0 && index < xLabels.count ? xLabels[index] : "")
}
override func formatCursorLabel(_ dataValue: ISCIComparable!) -> ISCIString! {
let index = Int(dataValue.toDouble())
var result: String?
if (index >= 0 && index < xLabels.count) {
result = xLabels[index]
}
return NSString(string: result!)
}
}
Application crashes while loading with the following error –
” *** Terminating app due to uncaught exception ‘Initializer not allowed Exception’, reason: ‘Parameterless initializer of Chart.YearsLabelProvider class shouldn’t be used. Please use one of the designated initializers instead'”
Kindly help us resolving this issue since this is a showstopper issue.
I would also like to know about what data SCIXyDataSeries accepts when we are working with strings.
- suraj gaikwad asked 4 years ago
- last active 4 years ago
After upgraded SciChart to SciChart_iOS_SDK_3.0.0.5074, using rollover modifier on a SciChart surface which was embedded into a scroll view will crash the app. It crashed when user scroll horizontally on a SciChart surface inside a horizontal scrollable scrollview. It is the same with the vertically scrollable scrollview.
2020-03-09 10:14:15.489302+0800 ******[4835:62890] -[SCIRolloverModifier onTouchesCancelled:]: unrecognized selector sent to instance 0x60000ba28500
2020-03-09 10:14:15.503967+0800 *******[4835:62890] *** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[SCIRolloverModifier onTouchesCancelled:]: unrecognized selector sent to instance 0x60000ba28500’
*** First throw call stack:
(
0 CoreFoundation 0x00007fff23c7127e exceptionPreprocess + 350
1 libobjc.A.dylib 0x00007fff513fbb20 objc_exception_throw + 48
2 CoreFoundation 0x00007fff23c91fd4 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
3 CoreFoundation 0x00007fff23c75c4c forwarding + 1436
4 CoreFoundation 0x00007fff23c77f78 _CF_forwarding_prep_0 + 120
5 SciChart 0x000000011139aaba -[SCITouchModifierBase onEvent:] + 186
6 SciChart 0x000000011135dfd8 +[SCIEventManager raiseOnEvent:toTarget:isMaster:] + 267
7 SciChart 0x000000011132d03f __38-[SCIEventDispatcher p_SCI_commonInit]_block_invoke + 165
8 SciChart 0x000000011132d45d -[SCIEventDispatcher raiseOnEvent:withAction:] + 569
9 SciChart 0x000000011133fa94 -[SCIChartSurfaceBase p_SCI_onTouchEvent:] + 233
10 SciChart 0x000000011133f996 -[SCIChartSurfaceBase touchesCancelled:withEvent:] + 209
11 UIKitCore 0x00007fff480bf863 forwardTouchMethod + 340
12 UIKitCore 0x00007fff480bf974 -[UIResponder touchesCancelled:withEvent:] + 49
13 UIKitCore 0x00007fff480bf863 forwardTouchMethod + 340
14 UIKitCore 0x00007fff480bf974 -[UIResponder touchesCancelled:withEvent:] + 49
15 UIKitCore 0x00007fff480a4a43 __106-[UIApplication _cancelViewProcessingOfTouchesOrPresses:withEvent:sendingCancelToViewsOfTouchesOrPresses:]_block_invoke + 609
16 UIKitCore 0x00007fff480a429e -[UIApplication _cancelTouchesOrPresses:withEvent:includingGestures:notificationBlock:] + 1163
17 UIKitCore 0x00007fff480a47ac -[UIApplication _cancelViewProcessingOfTouchesOrPresses:withEvent:sendingCancelToViewsOfTouchesOrPresses:] + 158
18 UIKitCore 0x00007fff47c37f2f -[UIGestureEnvironment _cancelTouches:event:] + 707
19 UIKitCore 0x00007fff47c40115 -[UIGestureRecognizer _updateGestureForActiveEvents] + 1779
20 UIKitCore 0x00007fff47c31eda _UIGestureEnvironmentUpdate + 2706
21 UIKitCore 0x00007fff47c3140a -[UIGestureEnvironment _deliverEvent:toGestureRecognizers:usingBlock:] + 467
22 UIKitCore 0x00007fff47c3117f -[UIGestureEnvironment _updateForEvent:window:] + 200
23 UIKitCore 0x00007fff480d04b0 -[UIWindow sendEvent:] + 4574
24 UIKitCore 0x00007fff480ab53b -[UIApplication sendEvent:] + 356
25 UIKit 0x0000000114ad2bd4 -[UIApplicationAccessibility sendEvent:] + 85
26 UIKitCore 0x00007fff4812c71a __dispatchPreprocessedEventFromEventQueue + 6847
27 UIKitCore 0x00007fff4812f1e0 __handleEventQueueInternal + 5980
28 CoreFoundation 0x00007fff23bd4471 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17
29 CoreFoundation 0x00007fff23bd439c __CFRunLoopDoSource0 + 76
30 CoreFoundation 0x00007fff23bd3b74 __CFRunLoopDoSources0 + 180
31 CoreFoundation 0x00007fff23bce87f __CFRunLoopRun + 1263
32 CoreFoundation 0x00007fff23bce066 CFRunLoopRunSpecific + 438
33 GraphicsServices 0x00007fff384c0bb0 GSEventRunModal + 65
34 UIKitCore 0x00007fff48092d4d UIApplicationMain + 1621
35 ****** 0x000000010b51505f main + 143
36 libdyld.dylib 0x00007fff5227ec25 start + 1
37 ??? 0x0000000000000001 0x0 + 1
)
- Gary Chan asked 4 years ago
- last active 4 years ago
I’ve received this crash report for a long time since I use this SDK.
But now it’s the largest amount of crash report in the newest version.
Do you have any idea about this?
I use the SDK to show meter temperature and humidity data. It’s about 10k to 30k data show in the chart and every time the user has download the data or the user zoom, drag the chart will recalculate the min, max, avg number in the visible time range.
Thank you~
- Switch Bot asked 4 years ago
- last active 4 years ago
On clicking any where on stacked bar chart it shows the x axis value. How can we disable the highlight ?
- Nathaniel Thomas asked 4 years ago
- last active 4 years ago
How can we restrict stacked graph chart scrolling to future date ?
- Nathaniel Thomas asked 4 years ago
- last active 4 years ago
We need to generate adhoc ipa file for review purpose and we are using the trial version, but its fails. Can you help us on the same?
- Nathaniel Thomas asked 4 years ago
- last active 4 years ago
We are using stacked bar chart, and showing only 6 bars visible at a time.
In the X-Axis, the month labels are missing for alternate months & only displays all month label as a flash when graph is being scrolled. Is there any way to fix this.
- Nathaniel Thomas asked 4 years ago
- last active 4 years ago
Stacked Bar chat: If we give 0 values, there are Black lines showing at middle of screen. please see attached screen.
- Nathaniel Thomas asked 4 years ago
- last active 4 years ago
iPhone 6, OS 12.4.3., X-axis, Y-axis texts are shown in inverted text. We can see this issue if we download the AppStore version of SciChart app
- Nathaniel Thomas asked 4 years ago
- last active 4 years ago
Dear SCICharts support:
We have a very large project that must be migrated to version 3 because right it uses version 2.
I am stuck in the following issues:
1/ I cannot convert Double or Date to ISCIComparable.
Our x axis contains Date-timestamp values and I am trying to find the index of the dataseries.xValues of a specific Date having as parameter my Date value which is Date type and not ISCIComparable.
How can I do this ?
When I try my attempt 1:
let x: Double = <DoubleValue>
let index = dataSeries.xValues.findIndex(of: x, searchMode: .nearest, isSorted: true)
I am getting the build error: “Cannot convert value of type ‘Date?’ to expected argument type ‘ISCIComparable?'”
When I try my attempt 2:
If I also try to iterate the xValues and find the ISCIComparable value which has doubleValue equal the x then I get the error “Type ‘ISCIList?’ does not conform to protocol ‘Sequence'”
I mean something like this:
let x: Date = Date()
var comparableValue: ISCIComparable? = nil
for val in dataSeries.xValues {
if val.toDate() == x {
comparableValue = val
}
}
So any solution please ?
2/ I am trying to update the last point of dataSeries using this code:
let lastPoint = dataSeries.count - 1
if let open = dataSeries.openValues.value(at: lastPoint) {
dataSeries.update( open: open,
high: max(dataSeries.highValues().value(at: lastPoint).toDouble(), mbidPrice),
low: min(dataSeries.lowValues().value(at: lastPoint).toDouble(), mbidPrice),
close: mbidPrice,
at: lastPoint) }
and I get the error “Cannot convert value of type ‘ISCIComparable’ to expected argument type ‘ISCIValues?’ “
Why ? How should I do this ?
Thanks a lot in advance
- Dxat asked 4 years ago
- last active 4 years ago