Chart Performance

2 posts, 0 answers
  1. Johnny
    Johnny avatar
    16 posts
    Member since:
    Sep 2009

    Posted 17 Sep 2009 Link to this post

    Hi All,
    I am trying to evaluate the performance of the RadChart in a Silverlight environment.  My current chart is a simple line chart.  The problem comes when there are numerous datapoints.  It is relatively speedy with numbers under 10, but we currently have 400 and there could be more.  I had seen in one post that SuspendNotifications and ResumeNotifications was expected to solve this problem, but I haven't had any luck.  I've placed the code below that I am using on the VB side to populate the chart.  Any assistance would be wonderful.  Within the example mData is simply holding the collection of values.
    --Johnny

     

    Dim seriesData As New DataSeries 

     

    Dim point As DataPoint

     

     

     

    seriesData.SuspendNotifications()

     

     

    For Each row In mData

        point =

    New DataPoint

     

        point.XValue = row.XVal.ToOADate
        point.YValue = row.YVal

     

        seriesData.Add(point)

     

    Next

     

     

     

    seriesData.Definition =

    New LineSeriesDefinition()

     

      

     

    TryCast(seriesData.Definition, LineSeriesDefinition).ShowPointMarks = False

     

     

    seriesData.Definition.ShowItemLabels =

    False

     

     

    seriesData.Definition.ShowItemToolTips = True

     

     

     

    seriesData.Definition.Appearance.StrokeThickness = 1

    Chart.DefaultView.ChartArea.AxisX.IsDateTime =

    True

     

     

    Chart.DefaultView.ChartLegend.Visibility = Windows.Visibility.Collapsed

     

    Chart.DefaultView.ChartArea.AxisX.LabelRotationAngle = 90

    Chart.DefaultView.ChartArea.AxisX.IsDateTime =

    True

     

     

    Chart.DefaultView.ChartArea.AxisX.DefaultLabelFormat = "MM/dd/yy hh:mm:ss"

     

     

    Chart.Visibility = Windows.Visibility.Visible

     

    Chart.AnimationSettings.ItemDelay = System.TimeSpan.Zero

    StyleManager.SetTheme(Chart,

    New SummerTheme)

     

     

    Chart.DefaultView.ChartArea.DataSeries.Add(seriesData)

    seriesData.ResumeNotifications()

     

  2. Giuseppe
    Admin
    Giuseppe avatar
    2363 posts

    Posted 18 Sep 2009 Link to this post

    Hello Johnny,

    We must admit that the latest official version of the control introduced a performance issue that becomes problematic when the control is populated with large amount of data. Our developers have already addressed the issue and you can download the fixed binaries from the "Latest Internal Build" section in your Client.Net account.

    About the SuspendNotifications / ResumeNotifcations usage -- generally these methods are not part of the public API and are now called internally by the control itself when necessary. That said, speaking about general performance -- we will be working on UI and data virtualization for the Q1 2010 release and we hope that we will be able to achieve noticeable improvements in the loading speed of the control.


    Regards,
    Manuel
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
Back to Top