New to Telerik Reporting? Download free 30-day trial

Polar Charts

A Polar chart displays series as sets of data points that are grouped by category on a 360-degree circle and represent the values by the distance of the point as measured from the center of the circle.

The farther the data point is from the center, the greater its value is. Category labels are displayed on the perimeter of the chart.

The following image displays a Rose Polar chart:

A basic Polar chart type

Types

The Graph supports the following Polar chart types:

  • Line Polar Charts—A Polar chart in which the data points are connected by a line.
  • Area Polar Charts—A Polar chart in which the data points are connected by a line with the area below the line filled with color.
  • Rose Polar Charts—A Polar chart in which the data points are represented by bars drawn in a polar coordinate system.

Creating Radar Polar Charts with the Radar Chart Wizard

In this section, you will learn how to create a Rose chart with our Rose Chart Wizard. This is a variation of the Polar (Radar) Chart type and is located under the Other Charts in the main menu. We are going to display the LineTotal of the Product Categories by Years. The final report will look like the image above.

The sample report will use a pre-defined SqlDataSource that connects to the example AdventureWorks database. The query that returns the needed fields is the following:

SELECT
    [Production].[ProductCategory].[Name] AS 'Category',
    [Sales].[SalesOrderHeader].[OrderDate],
    [Sales].[SalesOrderDetail].[LineTotal]
FROM
    [Production].[Product] INNER JOIN
    [Production].[ProductSubcategory] ON [Production].[Product].[ProductSubcategoryID] = [Production].[ProductSubcategory].[ProductSubcategoryID] INNER JOIN
    [Production].[ProductCategory] ON [Production].[ProductSubcategory].[ProductCategoryID] = [Production].[ProductCategory].[ProductCategoryID] INNER JOIN
    [Sales].[SalesOrderDetail] ON [Production].[Product].[ProductID] = [Sales].[SalesOrderDetail].[ProductID] INNER JOIN
    [Sales].[SalesOrderHeader] ON [Sales].[SalesOrderDetail].[SalesOrderID] = [Sales].[SalesOrderHeader].[SalesOrderID] AND [Sales].[SalesOrderDetail].[SalesOrderID] = [Sales].[SalesOrderHeader].[SalesOrderID] AND 
    [Sales].[SalesOrderDetail].[SalesOrderID] = [Sales].[SalesOrderHeader].[SalesOrderID]

To create the Polar chart by using the Polar Chart Wizard:

  1. Add Rose Chart as shown in the image below:

    Add Rose Polar Chart Wizard

  2. Select the SqlDataSource, or create it with the Add New Data Source... button and by using the query above:

    Add DataSource to the Rose Polar Chart

  3. Arrange the Rose Chart:

    1. Drag the Category field to Series.
    2. Drag the OrderDate.Year field to Categories.
    3. Drag the LineTotal field to Values. The wizard will automatically apply the Sum aggregate function.

    Arrange the Polar Chart

  4. The LineTotal value is large, so let's change the Data > Y expression of barSeries that is currently =Sum(Fields.LineTotal) to =ISNULL(Sum(Fields.LineTotal), 0) / 1000.0. Note that a Null check is also included and the Null values to be replaced with a 0 (zero).

  5. The LineTotal values for the Bikes category are significantly higher than the other three categories, so let's use a Logarithmic Scale for the RadialAxis to improve the user experience:

    1. Select the Graph > Presentation > CoordinateSystems, and click on the ellipses (...) beside the property. This action will open the GraphCoordinateSystem Collection Editor.
    2. Go to the RadialAxis property and select from the drop-down.
    3. Expand the RadialAxis1 property and change the LabelAngle to 90 degrees to improve the appearance.

    The following image with the proper fields highlighted shows how the above settings look in the designer:

    Change Radial Axis Scale to Logarithmic in the Rose Polar Chart

To see the full implementation of the sample report, refer to the PolarChart.trdp project on GitHub.

Creating Radar Polar Charts Manually

This section will show how to manually create a Polar chart.

1. Add the Graph

To add a new Graph report item to the report, refer to the article getting started with the Graph report item.

2. Set the SeriesGroups Hierarchy

Now you can set the SeriesGropus hierarchy of the Stacked Area chart:

  1. Open the SeriesGroups collection editor and click Add.
  2. Set the Groupings to =Fields.OrderDate.Year.
  3. Set the Sortings to =Fields.OrderDate.Year.
  4. Set the Name to seriesGroup1.

3. Set the CategoryGroups Hierarchy

Next, you will have to define the CategoryGroups hierarchy of the Stacked Area chart:

  1. Open the CategoryGroups collection editor and click Add.
  2. Set the Groupings to =Fields.Category.
  3. Set the Sortings to =Fields.Category.
  4. Set the Name to categoryGroup1.

4. Configure the Coordinate System

Here you will specify the coordinate system details:

  1. Open the CoordinateSystems collection editor and Add a new PolarCoordinateSystem.
  2. Leave the Name to polarCoordinateSystem1.
  3. Set the RadialAxis to New Axis Logarithmic Scale.
  4. Set the AngularAxis to New Axis with Category Scale.

5. Configure the Series

In this step, you will configure the series of the chart:

  1. Open the Series collection editor and Add new BarSeries.
  2. Set the CategoryGroup to categoryGroup1.
  3. Set the SeriesGroup to seriesGroup1.
  4. Set the CoordinateSystem to polarCoordinateSystem1.
  5. Set the ArrangeMode to Clustered.
  6. Set the Y value to =ISNULL(Sum(Fields.LineTotal), 0) / 1000.0.

6. Style the Appearance

To set the color palette, format the labels, define the values of the legend, and elaborate on any other styling options, refer to the section on formatting the Graph.

Design Considerations

Polar charts are most commonly used to graph polar data where each data point is determined by an angle and a distance.

See Also

In this article