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

0 votes
0 answers


I’m trying to enable the use of multiple VerticalLineAnnotations and show the corresponding SeriesInfo in an extra legend to the user. Utilizing the RolloverModifier Tooltips example, this works quite easily for the position and values of the VerticalLineAnnotations. However, I would like to show differences (X and Y) between the values of two VerticalLineAnnotations in the same manner.

My approach was to subclass ChartDataObject and add an ObservableCollection of a custom class (SeriesDifferenceInfo) providing properties, which exhibit DeltaX and DeltaY for binding in the surface. For keeping this collection up to date when adding or removing a VerticalLineAnnotation, I registered for the CollectionChanged event of SeriesInfo in my subclassed ChartDataObject and wanted to update the Collection of SeriesDifferenceInfo subsequently. But somehow this event appears not to be triggered on a change in the list of SeriesInfo. Am I doing something wrong or is this intended behaviour? Of course, I could simply call a method UpdateDifferenceCollection(), when adding/removing a VerticalLineAnnotation, but is this really neccessary?

Also, the next problem is triggering PropertyChanged for the DeltaX and DeltaY values when the values of one SeriesInfo changed. I guess this could be done by listening to e.g. a drag event of VerticalLineAnnotation, but is there a more straightforward way to do this?

Best regards

0 votes


I have a DateTimeAxis and the user can change the TextFormat. It has to be “mm/yyyy” or “dd/yyyy” or “ww/yyyy” but in the last case it does not work. To display in month or in the day format is working, but I have to display in week format to and I don’t know how to do it. Can you please help me with these?

0 votes

In the Knowledge Base, an article discusses a rollover modifier that utilises a vertical hit test to draw a vertical line at the cursor and highlight the nearest point:—part-1—creating-a-custom-rollover-modifier

This is perfect for data which moves/is unique along the X axis (such as time series data).

How can I best replicate this modifier for data which moves/is unique along the Y axis? Drawing a horizontal line is easy, but there is no HorizontalSliceHitTest function.

  • Rick C asked 5 days ago
  • last active 7 hours ago
0 votes


I’m trying to update a chart from version 3.1.x of a chart. In the old chart there was a XyScatterRenderableSeries with markers width set to 8. The Rollover line had the same width as the marker and it was easy to hit a point. After update the rollover line is thin and it is hard to hit a point. Please advise if it is possible to get back the old behavior.

0 votes


I would like to create some markers for a “FastLineRenderableSeries” only for specific points and add a label to them.

Is there a way to this with the latest version?


0 votes

I am trying to build an application with multiple charts on one screen (3) and each chart annotated with 20-25 annotations.
In total I have 6 FastLineRenderableSeries at once – 2 per chart.
I found serious performance issues after adding more than 10 annotations.

When a user presses a key I go to another set of data. Annotations are created on each data change. I create temporary collection and assign it to the surface annotations collection at once. I also suspend updates through Viewport Manager.

Creation of annotations does not seem to affect the performance, but the rendering of them does.

Most of them are derivatives of AxisMarkerAnnotation and apply a different label template. I tested adding standard Text Annotations instead, just to see whether the custom template had to do something with the performance drop, but it was more or less the same case.
The custom templates are also really simple, it is either a text block or a filled shape, always one component.

Do you have any advises for using a bigger number of annotations?
How to make their rendering faster?

When I remove all annotations the “scrolling” of data goes really smooth.

I am running out of ideas of how to improve.

Best regards,

PS Is there any way to try out the other renders before buying a license?

0 votes

I’m revisiting a problem I asked about here a year ago. My goal was to create a chart where the visible range is scrolling “window” that advances ahead of the most recent data point when the data hits the edge so that the line is always moving from the center of the chart towards the edge.

I was able to get something to work by inheriting from the NumericAxis type and overriding CalculateDataRange(). I’m trying this again with a more recent version of SciChart (4.2.2) and it looks as though, while CalculateDataRange is still present, it isn’t called when a data point is added to the chart.

My questions are:
a) Since then, is there a better way to create a scrolling window of data?
b) If not, what has taken the place of CalculateDataRange if I were to again attempt to intervene in the calculation of the visible data range when a point is added?


0 votes

Hi There,

We are thinking to buy sci chart licence and we are looking for specific feature as below.

Assume that there are 10 points on scatter series on a chart and all of them showing chart labels.
Now we want to give user ability to turn off label… any on specific chart points .. basically he will turn off labels.. specifically click /selecting that point ..r in some way. In short he will selectively turns off label.

Can we do this with scichart?

  • srikiran asked 2 weeks ago
  • last active 7 hours ago
0 votes


If I remember good, in a old version of SciChart it was possible to draw custom annotation in chart with a “pen”, like in Paint.

In the current version is it possible? And if yes, how do it please?


  • Neimad asked 2 weeks ago
  • last active 2 weeks ago
1 vote


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,

0 votes

Is there a way to make a screenshot from a chart without drawing the chart on screen?

I am making an application that will send an E-mail with alot of extra info, one of the attachements is a chart.
The application is running in a Windows service, so showing the chart to take a screenshot is not the way to go.

When I am sending the email I want to take the following steps:

  1. Get the data
  2. Render the data in memory (not on screen).
  3. Create an image of the chart.
  4. Include this image in my E-mail.

Can someone tell me if this is a possibility and how I can do this?

  • Kevin Goos asked 3 weeks ago
  • last active 3 weeks ago
0 votes

I didn’t get my serial key per email for the trial version. How to get it?

0 votes

do you have offline version of android charts.
my computer is not connected to the internet.

  • shay hadar asked 4 weeks ago
  • last active 4 weeks ago
-2 votes
0 answers

i am trying to refresh data list on button click and again bind this list to scichart but it not reflect to sci chart data

1 vote

Hello, first let me say this is a awesome product.

I’m trying to implement sweeping scroll on SciChart. I have read the following article
and was able to implement it, but i have one small issue.

First my x axis is TimeSpanAxis, i need ticks to move appropriately. In chart presented with uploaded image, time base of X axis is fixed with VisibleRange from 0-10. I need tick on new trace that comes from left side to add ticks in order like 11-12-13… and old axis to lose oldest ticks like 0-1-2… So when i add new tick on left side trace, oldest tick on right side trace will disapper

Best regards

0 votes

Right now I’m encountering a strange problem.

  1. Open C# WPF app containing SciChart on Windows Server 2012 R2 computer.
  2. Open a tabbed view that contains SciChartSurface.
  3. Press Ctrl-Alt-Del and Switch User. Select user and type in login password.
    Instead of switching user, Remote Desktop can be used to log in to the Windows Server 2012 R2 computer.
  4. After password is entered, an InvalidOperationException would occasionally appear. Enclosed is a popup dialog that appears when the exception occurs.

The error message says “Specified element is already the logical child of another element. Disconnect it first.”

However, the problem doesn’t occur every time though.

This problem never occurs on Windows 7, and it may be related to how DataContext gets changed in newer versions of Windows (like Windows 10 and Windows Server 2012 R2) after remote login or user switch.

Here’s a link to a StackOverflow question posted by someone else regarding this DataContext issue:

Somehow, a DataContext change would occasionally glitch up SciChart to produce this exception. This is problematic because one of our customers installed our WPF software application (containing SciChart) on a Windows Server 2012 R2 machine, and would remote login to that machine to run the app. Occasionally the Windows Remote Desktop would lose its connection (understandable), but when the customer logs in again, if the screen the customer was on contained a SciChart surface, the app would occasionally display the InvalidOperationException and crash.

  • Rocky Chan asked 1 month ago
  • last active 1 month ago
1 vote

Hey all,

I’ve bound a plot’s NumericAxis.AutoTicks to a checkbox and MinorDelta and MajorDelta to TextBoxes. The Idea being that the user can toggle on and off automatic tick spacing and apply their own spacing if they desire. I’m hoping to avoid having to override the tickproviders and/or deltacalculators.

My issue is that once AutoTicks is set to true it appears to lock-out external input of the deltas even after it has been set back to false.

Have I missed something?

0 votes


I’m having issues when I want to apply a custom PaletteProvider to a XyScatterRenderableSeries.

It takes forever to show just 10.000 points! I am really surprised given that without custom coloring I can render more than 50M points.

As far as I know, I’m not doing anything fancy. Have a simple transfer function inside the PaletteProvider that colors the PointMarker based on a Z value that is set as an indexed collection which I can access directly on the Palette Provider.

I’m using a SquarePointMarker as the marker, and I’ve also tried to set DirectXHelper.TryApplyDirectXRenderer to true.

Is this a known performance issue? Is there some way to by-pass it?

We’re expecting to be able to draw about 10M points colored.

Thank you.


0 votes

There doesn’t seem to be a corresponding IRenderableSeries3DViewModel object like there is in the 2D charts. What am i suppose to bind to the RenderableSeries property of the SciChart3DSurface? If I bind to a


object, then I don’t see a corresponding SurfaceMeshRenderableSeries3DViewModel object similar to LineRenderableSeriesViewModel for 2D?

A simple example of series binding using 3D charts would be great!

  • Andy None asked 1 month ago
  • last active 1 month ago
0 votes


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];


1 vote

Hi, I’m trying to just create a simple WPF MVVM application that binds to the ViewportManager and add series dynamically. The data range (X and Y) will vary and I’d like to zoom to fit after a new series is added. Seems simple, but I cannot get it to work. I’ve tried calling ZoomExtents on a bound DefaultViewportManager as well as InvalidateElement() and InvalidateParentSurface(RangeMode.ZoomToFit) and they all have no affect. I was assuming I was doing something wrong, but if you try the WPF demo/sample application it does the same thing. If you go to 2D Charts -> MVVM Examples -> Manipulate Series MVVM, there is a call to AnimateZoomExtents that doesn’t work either after you add a series. You still have to double click on the graph after clicking the plus button to make it fit the graph. I just want to zoom to fit the data and not use code behind. The functionality is clearly there because if you define <s:ZoomExtentsModifier ExecuteOn="MouseDoubleClick"/> it works perfectly, so how do I force that to happen from my view model? Thank you!

  • Andy None asked 1 month ago
  • last active 1 month ago
0 votes

Because we have limited vertical space, I would like to change the position of the x-axis title.
Ideally, to the right of the x-axis values.
Using code behind, this was sort of possible, but we would like to do it using xaml.
Also, the code behind solution had problems when resizing the chart.
Is this possible?

0 votes

I’m implementing exporting charts. As part of my export, the user can specify the size of the chart. I’ve managed to get sciChartSurface.ExportToBitmapSource() working fine for single graphs.

However, I’ve got some quite complex layouts, and when I try to render parent controls that contain Scichart controls manually, with say:

ExportUIElement.Arrange(new Rect(size));

 int dpiScaling = 3;
RenderTargetBitmap bmp = new RenderTargetBitmap(Width * dpiScaling, Height * dpiScaling,
                                                                                                           96 * dpiScaling, 96 * dpiScaling,

I’m finding everything working, the chart layout & axis/labels update and render fine, but the chart content is not re-rendered to the new size, causing some messy/strange visual effects. This one was arranged to a larger size, you can see that the actual chart content is now sitting snugly in the middle of a large margin:

enter image description here

Can I force Scichart to re-render these so I can manually render the component in a different size?

  • hanvyj asked 1 month ago
  • last active 1 month ago
0 votes

In our project we had ScrollViewer on the LegendModifier:

<s:LegendModifier ShowLegend="True" ScrollViewer.VerticalScrollBarVisibility="Auto" x:Name="legendModifier" Orientation="Vertical" Margin="10" LegendItemTemplate="{StaticResource SciChartLegendItemTemplate}" >

It used to work with SciChart version, but after the update to, the scroll bar is no longer shown, which is a big problem!
Tried also with the latest version, still not working.
I also have get this in the output:
System.Windows.Data Warning: 40 : BindingExpression path error: ‘ScrollViewer’ property not found on ‘object’ ”LegendPlaceholder’ (Name=”)’. BindingExpression:Path=ScrollViewer.HorizontalScrollBarVisibility; DataItem=’LegendPlaceholder’ (Name=”); target element is ‘SciChartLegend’ (Name=”); target property is ‘HorizontalScrollBarVisibility’ (type ‘ScrollBarVisibility’)
System.Windows.Data Warning: 40 : BindingExpression path error: ‘ScrollViewer’ property not found on ‘object’ ”LegendPlaceholder’ (Name=”)’. BindingExpression:Path=ScrollViewer.VerticalScrollBarVisibility; DataItem=’LegendPlaceholder’ (Name=”); target element is ‘SciChartLegend’ (Name=”); target property is ‘VerticalScrollBarVisibility’ (type ‘ScrollBarVisibility’)

0 votes


I have taken the FastColumnRenderableseries and flipped some of the internals to create a FastRowRenderableseries. My question is how can I exclude the additional axis (Numeric type) from zoom calculations including extents, rubber band, mouse, etc.

The row series was implemented to create a way to show a magnitude in the X axis at specific price levels (volume accumulated at price level) of the SciStockChart y price axis. I did try using the column series but with a different placement but it’s zoom would size incorrectly.

I have tried using the viewport managers, as well as catching the axis changed then iterating over the x axis price data series visible range to store the visible highest/lowest then setting the y axis visible range based on that highest/lowest.

Ideally, I’d like to find a way to use one of the pre-made viewport managers or a custom one so that modifiers won’t be affected.

0 votes

I’d like to use the SciChartInteractionToolbar and the SciChartScrollbar in a scichart based project however (as always) there are some small but important changes that I need to make. I’ve looked everywhere but I can’t find where the toolbar is actually built in order to make the changes. I’m sure I could build the toolbar from scratch but this seems a waste when its largely already complete. Can you advise where I would find the code for the toolbar(s)?
Many thanks for your help!

0 votes

I need to create a series which draws boxes from start & end date times (X, X). The Y value will always be set to the maximum value of the all series displayed in the chart. I noticed that there is an XYY DataSeries type but not an XXY. I attempted to use a custom point marker which got me so far but I think displaying as a series is the way to go. This is the effect I’m going for:

X,X,Y data series

I have read around creating a CustomRenderableSeries which I intend to use however I believe that I first may need the data series to accept two X values (start & end)?

1 vote


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.

1 vote

I am implementing a feature to load more historical data when users pan to the left side on a CategoryDateAxis.
To load more, i need to have 2 Date which is the earliest data point i have and the Date that is shown on the X-Axis

For the earliest data point, i can get via IXyDataSeries#getXMin()
But for the other Date, i’m not sure how to get it. I can listen to range changes via IAxisCore#VisibleRangeChangeListener, but the range returns Double. I cant figure out to convert it into a Date

  • abc def asked 2 months ago
  • last active 2 months ago
0 votes


Maybe I’m the only one but after installing I can’t start SciChart.Examples.Demo or SciChart.LicensingWizard both crash on startup.

  • Paul R asked 2 months ago
  • last active 2 months ago
1 vote

Visual Studio 2015

This isn’t a critical issue since it is handled but since it didn’t do this for the old version I thought I’d bring it to your attention. Awesome product BTW.

I just upgraded my .NET 4.0 SciChart 2D application from SciChart version to
Now I get the following (handled) exception message in the output window if I use a legend with my chart:

System.Windows.Data Warning: 40 : BindingExpression path error: ‘ScrollViewer’ property not found on ‘object’ ”LegendPlaceholder’ (Name=”)’. BindingExpression:Path=ScrollViewer.HorizontalScrollBarVisibility; DataItem=’LegendPlaceholder’ (Name=”); target element is ‘SciChartLegend’ (Name=”); target property is ‘HorizontalScrollBarVisibility’ (type ‘ScrollBarVisibility’)

This XAML the triggers the exception (comment it out and exception goes away):

                                <s:LegendModifier ShowLegend="True" />

How to reproduce:
– Take the EEG sample with the latest SciChart version (
– Change the target framework to .NET 4.0
– Change the SciChart references to use the SciChart 4.2, net40 DLLs.

I made a test solution for the following combinations:
.NET 4.5 with SciChart 4.2 works
.NET 4.0 with SciChart 4.2 throws exception
.NET 4.0 with SciChart 4.1 works

0 votes


Is there any way to draw text at custom angle using RenderContext.DrawText?

For example, like in the picture below

Thanks in advance

0 votes

I am new to this App, and also to Android Studio, however, I am using the trial version of Scichart. 2D graph, Scatter Plot.
I want change the Grid Rows and Columns, also How do I change the Data I want to display on the Screen, Also the Amount of Data.
I wish to display only one point at a Time !!

Right Now, I am displaying the Data on Windows Platform, But later I Want to port the same to Smartphone, Android Platform.

Help Appreciated ?!!

0 votes


I want to limit the range of the grid lines of a graph. For example on the screenshot, I don’t want any gridlines on the marked area.
Is there way to do what I want?

I’m using version

Thank you

View post on

  • kewur asked 2 months ago
  • last active 2 months ago
1 vote


I am evaluating the SciChart control – so far it looks very promising.

I have a FastHeatMapRenderableSeries that is analyzed and a FastLineRenderableSeries line is drawn through the chart.

The user needs to be able to correct the analysis, and this is done by “drawing” in the heatmap.

As far as I could tell, the ChartModifierBase gives med the necessary hooks to track the user’s mouse movements – but I would like to give some visual feedback by changing the cursor, for instance to Cursors.Pen (Cursors from the Microsoft namespace)

Is this possible? I would want to enable drawing when user presses Ctrl, the disable it when user releases Ctrl…

0 votes


Can you please tell me DO you have Fibonacci Arcs, Fans and Gann Fan and Gann line annotations???
If no then please give me a sample code of any of these annotations about how to implement them with scichart.

Hoping for a quick response as my boss is much eager about it… 🙂

Thanks in advance.


0 votes

In a previous project (matlab based) we have created charts as in the attached image.

This was previously done by adding all the points to a 2d histogram, this is a bit cumbersome as to give nice output the data needs to be resampled so that data points are equidistant at the display scale otherwise fast rises or falls (i.e. a small number of equi-time points). This approach becomes even worse if you want to enable interactive inspection of the plot instead of static as this will need to be recalculated for each zoom level.

Is there an easy way a similar effect in scichart without having to resort to manually creating 2d histograms. I was thinking there may be some option I can play with on how line series are rendered that might be able to generate this effect.

  • Hugoagogo asked 2 months ago
  • last active 2 months ago
0 votes
0 answers

I have followed the multiple series overview chart example

When the parent series changes I want the overview to reflect the new series. If I do the following and bind the VisibleRange to the parent chart axis VisibleRange then I get the relevant updates to the overview control but of course the visible range changes in the overview when I want it to remain static:

                    <s:DateTimeAxis VisibleRange="{Binding ElementName=OverviewChartControl,         

                    <s:NumericAxis VisibleRange="{Binding ElementName=OverviewChartControl,         

I have tried binding the VisibleRange to the VisibleRange of the parent chart as above. I get the VisibleRange update this way however the data range of the overview chart is not updated to reflect the extents of the new data so if for example a smaller range of data is presented in the new series, the data width of the overview will still reflect the previous data.

Is there a way to avoid this issue?

0 votes


I would like to delete selected annotation when “delete” key are pressed on it; like this :

(newAnnotation as AnnotationBase).KeyDown += (o, e) =>

I made this method when I create annotation on CreationModifier.AnnotationCreated event.
but is not work; the event are not handled.
Can you tell me how can I do this please

  • Neimad asked 2 months ago
  • last active 2 months ago
0 votes


In the chart I generate a lot of series (fastline) in the code behind.
Now I need modify the tooltip for rollover to keep only the name of the serie and the color.

How bind the DataTemplate without xaml?


0 votes
0 answers

tl;dr = Why can’t I use DateTime on the YAxis for any XY type plots (Line, Scatter, etc)?

I have created a Heatmap solution that displays data with Time along the Left and Frequency along the bottom. This works great, and I don’t really want to refactor it.

Now, I am trying to plot some observations over the top of the heatmap, in the form of (value, timestamp). Then I run smack into the limitation mentioned in the title of this post. Can someone please explain the limitation? Isn’t the DateTime just a long (which can be a double)? You already do work at the double level (as evidenced by the AsDoubleRange() method on all of the Range objects), so why not just convert to Ticks, and then convert back?

I think I can solve my issue by adding axes, rotating them, managing their visual range… Just seems like a lot of work for a relatively arbitrary (at least on the surface) limitation.

Thank you for any insight you can provide.


0 votes


I have recently updated my SciChart assemblies to version

However, I use the SciChart3DInteractionToolbar, defined in SciChart.Examples.ExternalDependencies. This now appears to be incompatible with the recent nightly release and I get the error

Could not load file or assembly ‘SciChart.Charting3D, Version=

Is there a new ExternalDependancies dll available that I could use.

I can’t understand this issue because when I update the SciChart_SparseImpulseSeries3D example project to use the same new Scichart version this runs okay.

Any help in resolving this issue is gladly appreciated.



0 votes

Hello SciChart-Team!

I’m trying to give the user of my application the ability to switch between relative (TimeSpan) or absolute (DateTime) time on the X-Axis inside the graph.
I know that I could go with two separate XyDataSeries objects, one for each type but I’d rather not do this because of memory consumption. (millions of datapoints that would need to be stored in memory twice)

My idea would have been to make my code generic with an IComparable instead of TimeSpan or DateTime. Like this:`

new XyDataSeries<IComparable, double>()

The application would then decide on startup which X-Values it should go with and either show a TimeSpanAxis or a DateTimeAxis.

Sadly, this doesn’t work.
When initializing an XyDataSeries like that I get a NotImplementedException

Cannot create a DataDistributionCalculator for the type TX=System.IComparable


   at A.c5777c70d4cd0dda50a2117fa1aaa10fc.c368dd1d74117b21c11923a7963ca446f[c96cfda5e71b9e51b60daed32a29c7426](Boolean c9d35973164d478a320e72d2740e74116)
   at SciChart.Charting.Model.DataSeries.DataSeries`2.Clear()
   at SciChart.Charting.Model.DataSeries.DataSeries`2..ctor()
   at SciChart.Charting.Model.DataSeries.XyDataSeries`2..ctor(Int32 capacity)
   at PreSens.PMS2.ViewModels.Charting.SingleChannel.ChartData..ctor() in C:\**redacted**\ChartData.cs:line 91

Is this a bug or is this feature not yet implemented? Or is this not possible at all?
If it’s not possible to do it that way, what would you recommend to solve this problem with relative and absolute time?


1 vote

Hello SciChart-Team!

I’m trying to export a graph from my application using the “ExportToFile”-method.
This is what my code looks

Chart.ExportToFile(@"C:\Users\miko\Desktop\export.xps", SciChart.Core.ExportType.Xps, false, new Size(2560, 1440));

When this is being called the following exception is being raised

Exception thrown: 'SciChart.Charting.Common.Helpers.ExportException' in SciChart.Charting.dll
Additional information: Exception occured during deserialization of the SeriesSelectionModifier type. The SelectedSeriesStyle property of the Style type cannot be processed. Please be advised that SciChart doesn't handle serialization of objects with propeties of interface type, collection type or custom type.You need to implement IXmlSerializible in such objects to have them handled properly. For more details, please check the InnerException.

This exception seems to be related to the SeriesSelectionModifier I have applied to my chart.

The modifier XAML:

    SelectedSeriesStyle="{StaticResource selectedSeriesStyle}"
    SelectionChanged="seriesSelection_SelectionChanged" />

The style XAML

<Style x:Key="selectedSeriesStyle" TargetType="{x:Type s:FastLineRenderableSeries}">
     <Setter Property="PointMarkerTemplate">
                 Stroke="Black" />

When I remove the SeriesSelectionModifier from my XAML all works as expected.
What am I missing?

0 votes


When do you expect Android Chart 1.3 to be ready for delivery? I really need the logarithmic chart capability.

Mike Reed

0 votes
0 answers

I’m developing the WPF charts application in C#. I have an activated developer license.
When I compile my code with DUBUG mode, XamlParseException occurred. (In release mode, there are no exception)

That only happened in my new SciChart project, old one never happened.
I already reference the library like SciChart.Charting and the runtime license key is included in App.xaml.cs.

0 votes

I am want to have a label on the x axis for each point in my series. I then want to use a label provide to customize that label. Is this possible. if so how do i do that.


0 votes


I’be tried a small sample application where I instantiate a SciChart surface and some series.

I then added our Runtime License Key like it is explained here.

I gave the executable to two different persons. The first one got to see the charts but he got the “powered by SciChart logo”.
The second one wasn’t able to see the charts and got an “expired license” message.

I would understand seeing that if the user were running an application through Visual Studio or has a trial license, but I’m expecting them to be able to run the app normally when adding the Runtime License.

Any help would be appreciated.

Thank you very much.

Kind regards,

0 votes

It is possible to set the YAxis range independently from associated schichartsurface? I would have in a scichartoverview a Yrange settable in order to have a clearer view of the graph



0 votes


I would like to customize the values displayed on the tooltip, when rollover is enabled on my heatmap. After some searching in the examples and in the forum, I realized that there is no answer to my question.

I tried to follow the example in Series With Metadata, but then realized that there is no Append method for heatmap2DArrayDataSeries class. I then, tried to set a new Metadata object to the series, but it is read only.

May I know if there is a way to change/update the metadata in a heatmap?

Showing 1 - 50 of 2k results
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.
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.
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.