We have a com+ component that returns our data from the database in the following format.
This example represents 2 hours of 15min interval data with 4 data series delimited by commas.
1/1/2009 12:15:00 AM,263.560000000001,326.10000000149,54.22,73.629
1/1/2009 12:30:00 AM,254.490000002235,277,54.26,73.629
1/1/2009 12:45:00 AM,254.369999998509,274.39999999851,54,73.629
1/1/2009 1:00:00 AM,250.399999999255,253.20000000298,54.62,73.516
1/1/2009 1:15:00 AM,248.340000002981,246.29999999702,53.96,73.629
1/1/2009 1:30:00 AM,241.64999999702,286.20000000298,53.87,73.404
1/1/2009 1:45:00 AM,244.939999999999,311,53.65,73.291
1/1/2009 2:00:00 AM,241.980000000746,314.79999999702,53.74,73.516
We currently use a charting component that can produce a chart with 2 data series (Chart Series)
for 1 year in approximately 4 seconds (From Database query to Client display). That is 4x24x365=35040 points per series.
Will the RadChart (RadControls for ASP.NET AJAX Q2 2010) give us this kind of performance?
if so what would be the best method of loading the data into the chart
1) data binding
2) for loop loading item data
I'm currently seeing about a 15-20sec load time for 2 data series and 800 points using the following sample code.
// SETTING AXISES
RadChart1.PlotArea.XAxis.LayoutMode = ChartAxisLayoutMode.Between;
RadChart1.PlotArea.YAxis.Step = 6;
RadChart1.PlotArea.XAxis.Step = 10;
// SETTING SERIES
ChartSeries Series1 =
Series1.Type = ChartSeriesType.Line;
ChartSeries Series2 =
Series2.Type = ChartSeriesType.Line;
Series2.YAxisType = ChartYAxisType.Secondary;
//Load Series Data
i = 0; i < ProcessData.Length - 2000; i++)
String Channels = ProcessData[i].Split(
ChartSeries.AddItem(Convert.ToDouble(Channels[xSeries + 1]));