This is a migrated thread and some comments may be shown as answers.

RAD Chart - Request Timed Out Error

4 Answers 65 Views
Chart (Obsolete)
This is a migrated thread and some comments may be shown as answers.
LJ
Top achievements
Rank 1
LJ asked on 30 Sep 2009, 12:46 PM

Hi All,

I have a custom web part which includes RAD Chart control.
Chart is created dynamically as per the web part configuration settings.

We have a data table as shown in below figure, which is used as chart's data source.

Status

ADMIN

ATL-API

BACKEND

DESKTOP

CLOSED

 

 

3

1

DEFERRED

 

2

12

NOT A BUG

1

12

23


I create a multiple series chart (Type - Bar).

For each column (column 1 and onward), a new series is created. Series name is same as column name.
Series DataYColumn is set as column name.

Name of first column is set in 'radChartObj
.PlotArea.XAxis.DataLabelsColumn' value.

Then data is bind with chart.

Please refer the following code for details:

***************************************************************************************************************************

// Set chart's skin

radChartObj.Skin = "Vista";

radChartObj.Width =  new Unit("600 px");

// Set Chart's attributes. 

radChartObj.AutoLayout = true;

radChartObj.IntelligentLabelsEnabled = true;
radChartObj.DefaultType
 = ChartSeriesType.Bar;

// Set chart's data source.

radChartObj.DataSource = chartingDataTable;
 

// Set chart's x-axis data labels column name. 
radChartObj.PlotArea.XAxis.DataLabelsColumn = chartingDataTable.Columns[0].ColumnName;

// For each column (column 1 and onward), add a new series.

for (int colIndex = 1; colIndex < chartingDataTable.Columns.Count; colIndex++)

{

        string columnName = chartingDataTable.Columns[colIndex].ColumnName;

       // Prepare chart series name.

        string seriesName = columnName;

         // Create chart series.

        ChartSeries chartSeriesObj = new ChartSeries(seriesName); 


       // Set chart series' type and its DataYColumn name.
        chartSeriesObj.Type = ChartSeriesType.Bar; 
       chartSeriesObj.DataYColumn = columnName;

        // Set chart series' tooltip.

        chartSeriesObj.ActiveRegionToolTip = "#SERIES: #Y";

        // Set chart series' empty value mode as 'Zero'. 

        chartSeriesObj.Appearance.EmptyValue.Mode = Telerik.Charting.Styles.EmtyValuesMode.Zero; 

        // Add chart series to chart object.
 

         radChartObj.Series.Add(chartSeriesObj);  

}

// Bind data with chart. 

radChartObj.DataBind();

***************************************************************************************************************************

If i create a multiple series chart for more values (like 12 series) i.e. data table has more than 10 columns.
Also, first column of data table has 8-9 values.
Then X-Axis labels overlap each other.

If i set 
radChartObj.AutoTextWrap = true, so that X-Axis labels do not overlap each other, then Web Part page in which my web part is added, takes too much time to load the page and finally, Request Timed Out error occurs.

If i increase the time out value, then page is loaded successfully but it takes a lot to load.
Page should not take more time to load.

Please suggest a solution and let me know why page takes too much time to load if data table size increases.

4 Answers, 1 is accepted

Sort by
0
Giuseppe
Telerik team
answered on 05 Oct 2009, 08:40 AM
Hi Lipi Jain,

Indeed we are able to reproduce the performance issue when displaying large amount of items in your scenario. The problem is triggered by the RadChart.IntelligentLabelsEnabled feature that takes long time to execute the label positioning calculations when then number of labels becomes larger.

We will forward your report to our developers but unfortunately the only workaround we can suggest you at the moment is to disable this feature altogether. We are sorry for the inconvenience.



All the best,
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.
0
LJ
Top achievements
Rank 1
answered on 05 Oct 2009, 09:45 AM

Hi,

Thanks for ur reply.

Its working fine if I disable the feature RadChart.IntelligentLabelsEnabled. But then Chart is not very clear.
For eg., If for status as 'Closed' , only one series have value but other series have empty values, then zero values are cluttered.
and doesn't luk gud, even sometimes chart could not be understood.

Please let me know if u have any suggestion for the same.

Thanks!!

0
Accepted
Giuseppe
Telerik team
answered on 07 Oct 2009, 08:29 AM
Hi Lipi Jain,

Unfortunately as noted previously, we cannot suggest you a workaround that would preserve the intelligent labels functionality when large amount of items is displayed as the complexity for positioning the labels grows exponentially and therefore the time necessary to complete the calculations grows as well.

Sorry for the inconvenience once again.


Greetings,
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.
0
LJ
Top achievements
Rank 1
answered on 07 Oct 2009, 08:44 AM
OK!!

I hope in next release, this issue would not occur.

Thanks!!
Tags
Chart (Obsolete)
Asked by
LJ
Top achievements
Rank 1
Answers by
Giuseppe
Telerik team
LJ
Top achievements
Rank 1
Share this question
or