Search results

Polar Chart and Radar Chart

Polar Chart

To render a polar series, use seriestype as Polar.

Draw Types

Polar drawType property is used to change the series plotting type to line, column, area, range column, spline, scatter, stacking area and stacking column. The default value of drawType is Line.

Line

To render a line draw type, use series drawType as Line. isClosed property specifies whether to join start and end point of a line series used in polar chart to form a closed path. Default value of isClosed is true.

razor
polar-line.cs
@using Syncfusion.EJ2;
@section ControlsSection{
  @(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.Line)
            .Name("Warmest")
            .XName("xValue")
            .YName("yValue")
            .Width(2)
            .Marker(ViewBag.marker1)
            .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
             .Title("Months")
      )
      .PrimaryYAxis(yaxis =>
          yaxis.Title("Temperature (Celsius)").LabelFormat("{value}°C")
                 .Interval(10)
                 .Minimum(-25)
                 .Maximum(25)
                 .EdgeLabelPlacement(Syncfusion.EJ2.Charts.EdgeLabelPlacement.Shift)
      )
      .Title("Alaska Weather Statistics - 2016").Tooltip(tp=>tp.Enable(true)).Load("load").Render()
      )
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
                 new PolarData{ x=2005, y = 28 },
                 new PolarData{ x=2006, y = 25 },
                 new PolarData{ x=2007, y = 26 }, 
                 new PolarData{ x=2008, y = 27 },
                 new PolarData{ x=2009, y = 32 }, 
                 new PolarData{ x=2010, y = 35 },
                 new PolarData{ x=2011, y = 30 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
        {
            public double x;
            public double y;
        }

Spline

To render a spline line draw type, use series drawType as Spline.

razor
polar-spline.cs
@using Syncfusion.EJ2;
@section ControlsSection{
  @(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.Spline)
            .Name("Warmest")
            .XName("xValue")
            .YName("yValue")
            .Width(2)
            .Marker(ViewBag.marker1)
            .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
             .Title("Months")
      )
      .PrimaryYAxis(yaxis =>
          yaxis.Title("Temperature (Celsius)").LabelFormat("{value}°C")
                 .Interval(10)
                 .Minimum(-25)
                 .Maximum(25)
                 .EdgeLabelPlacement(Syncfusion.EJ2.Charts.EdgeLabelPlacement.Shift)
      )
      .Title("Alaska Weather Statistics - 2016").Tooltip(tp=>tp.Enable(true)).Load("load").Render()
      )
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
                 new PolarData{ x=2005, y = 28 },
                 new PolarData{ x=2006, y = 25 },
                 new PolarData{ x=2007, y = 26 }, 
                 new PolarData{ x=2008, y = 27 },
                 new PolarData{ x=2009, y = 32 }, 
                 new PolarData{ x=2010, y = 35 },
                 new PolarData{ x=2011, y = 30 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
{
            public double x;
            public double y;
        }

Area

To render a area line draw type, use series drawType as Area.

razor
polar-area.cs
@using Syncfusion.EJ2;
@section ControlsSection{
  @(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.Area)
            .Name("Warmest")
            .XName("xValue")
            .YName("yValue")
            .Width(2)
            .Marker(ViewBag.marker1)
            .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
             .Title("Months")
      )
      .PrimaryYAxis(yaxis =>
          yaxis.Title("Temperature (Celsius)").LabelFormat("{value}°C")
                 .Interval(10)
                 .Minimum(-25)
                 .Maximum(25)
                 .EdgeLabelPlacement(Syncfusion.EJ2.Charts.EdgeLabelPlacement.Shift)
      )
      .Title("Alaska Weather Statistics - 2016").Tooltip(tp=>tp.Enable(true)).Load("load").Render()
      )
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
                 new PolarData{ x=2005, y = 28 },
                 new PolarData{ x=2006, y = 25 },
                 new PolarData{ x=2007, y = 26 }, 
                 new PolarData{ x=2008, y = 27 },
                 new PolarData{ x=2009, y = 32 }, 
                 new PolarData{ x=2010, y = 35 },
                 new PolarData{ x=2011, y = 30 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
        {
            public double x;
            public double y;
        }

Stacked Area

To render a stacked area draw type, use series drawType as StackingArea.

razor
polar-stackedarea.cs
@using Syncfusion.EJ2;
@section ControlsSection{
@(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.StackingArea)
            .Name("2013")
            .XName("x")
            .YName("y")
            .Width(2)
            .DataSource(ViewBag.dataSource).Add();
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.StackingArea)
            .Name("2014")
            .XName("x")
            .YName("y1")
            .Width(2)
            .DataSource(ViewBag.dataSource).Add();
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.StackingArea)
            .Name("2015")
            .XName("x")
            .YName("y2")
            .Width(2)
            .DataSource(ViewBag.dataSource).Add();
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
          .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.StackingArea)
          .Name("2016")
          .XName("x")
          .YName("y3")
          .Width(2)
          .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
      )
      .PrimaryYAxis(yaxis =>
          yaxis.LabelFormat("{value}M")
                 .Interval(5000)
                 .Minimum(20000)
                 .Maximum(0)
      )
      .Title("GDP, Current Prices (in Billions)")
      .Tooltip(tp => tp.Enable(true))
      .Load("load").Render()
)
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
          new PolarData{ x=2000, y= 0.61, y1= 0.03, y2= 0.48},
          new PolarData{ x=2001, y= 0.81, y1= 0.05, y2= 0.53 },
          new PolarData{ x=2002, y= 0.91, y1= 0.06, y2= 0.57 },
          new PolarData{ x=2003, y= 1, y1= 0.09, y2= 0.61 },
          new PolarData{ x=2004, y= 1.19, y1= 0.14, y2= 0.63 },
          new PolarData{ x=2005, y= 1.47, y1= 0.20, y2= 0.64 },
          new PolarData{ x=2006, y= 1.74, y1= 0.29, y2= 0.66 }, 
          new PolarData{ x=2007, y= 1.98, y1= 0.46, y2= 0.76 },
          new PolarData{ x=2008, y= 1.99, y1= 0.64, y2= 0.77 },
          new PolarData{ x=2009, y= 1.70, y1= 0.75, y2= 0.55 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
{
            public double x;
            public double y;
            public double y1;
            public double y2;
}

Column

To render a column draw type, use series drawType as Column.

razor
polar-column.cs
@using Syncfusion.EJ2;
@section ControlsSection{
  @(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.Column)
            .Name("Warmest")
            .XName("xValue")
            .YName("yValue")
            .Width(2)
            .Marker(ViewBag.marker1)
            .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
             .Title("Months")
      )
      .PrimaryYAxis(yaxis =>
          yaxis.Title("Temperature (Celsius)").LabelFormat("{value}°C")
                 .Interval(10)
                 .Minimum(-25)
                 .Maximum(25)
                 .EdgeLabelPlacement(Syncfusion.EJ2.Charts.EdgeLabelPlacement.Shift)
      )
      .Title("Alaska Weather Statistics - 2016").Tooltip(tp=>tp.Enable(true)).Load("load").Render()
      )
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
                 new PolarData{ x="2005", y= 28 },
                 new PolarData{ x="2006", y= 25 },
                 new PolarData{ x="2007", y= 26 }, 
                 new PolarData{ x="2008", y= 27 },
                 new PolarData{ x="2009", y= 32 }, 
                 new PolarData{ x="2010", y= 35 },
                 new PolarData{ x="2011", y= 30 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
        {
            public string x;
            public double y;
        }

Stacked Column

To render a stacked column draw type, use series drawType as StackingColumn.

razor
polar-stackedcolumn.cs
@using Syncfusion.EJ2;
@section ControlsSection{
@(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.StackingColumn)
            .Name("2013")
            .XName("x")
            .YName("y")
            .Width(2)
            .DataSource(ViewBag.dataSource).Add();
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.StackingColumn)
            .Name("2014")
            .XName("x")
            .YName("y1")
            .Width(2)
            .DataSource(ViewBag.dataSource).Add();
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.StackingColumn)
            .Name("2015")
            .XName("x")
            .YName("y2")
            .Width(2)
            .DataSource(ViewBag.dataSource).Add();
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
          .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.StackingColumn)
          .Name("2016")
          .XName("x")
          .YName("y3")
          .Width(2)
          .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
      )
      .PrimaryYAxis(yaxis =>
          yaxis.LabelFormat("{value}M")
                 .Interval(5000)
                 .Minimum(20000)
                 .Maximum(0)
      )
      .Title("GDP, Current Prices (in Billions)")
      .Tooltip(tp => tp.Enable(true))
      .Load("load").Render()
)
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
          new PolarData{ x=2000, y= 0.61, y1= 0.03, y2= 0.48},
          new PolarData{ x=2001, y= 0.81, y1= 0.05, y2= 0.53 },
          new PolarData{ x=2002, y= 0.91, y1= 0.06, y2= 0.57 },
          new PolarData{ x=2003, y= 1, y1= 0.09, y2= 0.61 },
          new PolarData{ x=2004, y= 1.19, y1= 0.14, y2= 0.63 },
          new PolarData{ x=2005, y= 1.47, y1= 0.20, y2= 0.64 },
          new PolarData{ x=2006, y= 1.74, y1= 0.29, y2= 0.66 },
          new PolarData{ x=2007, y= 1.98, y1= 0.46, y2= 0.76 },
          new PolarData{ x=2008, y= 1.99, y1= 0.64, y2= 0.77 },
          new PolarData{ x=2009, y= 1.70, y1= 0.75, y2= 0.55 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
        {
            public double x;
            public double y;
            public double y1;
            public double y2;
        }

Range Column

To render a range column draw type, use series drawType as RangeColumn.

razor
polar-rangecolumn.cs
@using Syncfusion.EJ2;
@section ControlsSection{
 @(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.RangeColumn)
            .Name("Germany")
            .XName("x")
            .High("high")
            .Low("low")
            .Width(2)
            .Border(ViewBag.border)
            .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
             .StartAngle(90)
             .Title("Months")
      )
      .PrimaryYAxis(yaxis =>
          yaxis.LabelFormat("{value}˚C")
                 .Interval(5)
                 .Minimum(0)
                 .Maximum(20)
      )
      .Title("Maximum and Minimum Temperature")
      .Tooltip(tp => tp.Enable(true))
      .LegendSettings(lg => lg.Visible(false))
      .Load("load").Render()
)
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
            new PolarData{ x="Jan", low= 0.7, high= 6.1 },
            new PolarData{ x="Feb", low=1.3, high=6.3 },
            new PolarData{ x="Mar", low= 1.9, high= 8.5 },
            new PolarData{ x= "Apr", low= 3.1, high= 10.8 },
            new PolarData{ x="May", low= 5.7, high= 14.40 },
            new PolarData { x= "Jun", low= 8.4, high= 16.90 },
            new PolarData { x= "Jul", low= 10.6,high= 19.20 },
            new PolarData { x= "Aug", low= 10.5,high= 18.9 },
            new PolarData { x= "Sep", low= 8.5, high= 16.1 },
            new PolarData { x= "Oct", low= 6.0, high= 12.5 },
            new PolarData { x= "Nov", low= 1.5, high= 6.9  },
            new PolarData { x= "Dec", low= 5.1, high= 12.1 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
        {
            public string x;
            public double low;
            public double high;
        }

Scatter

To render a scatter draw type, use series drawType as Scatter.

razor
polar-scatter.cs
@using Syncfusion.EJ2;
@section ControlsSection{
 @(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.Scatter)
            .Name("2015")
            .XName("x")
            .YName("y")
            .Width(2)
            .Marker(ViewBag.marker1)
            .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
      )
      .PrimaryYAxis(yaxis =>
          yaxis.Interval(2)
                 .Minimum(0)
                 .Maximum(8)
      )
      .Title("Real GDP Growth")
      .Tooltip(tp => tp.Enable(true))
      .Load("load").Render()
)
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
                 new PolarData{ x="2005", y= 28 },
                 new PolarData{ x="2006", y= 25 },
                 new PolarData{ x="2007", y= 26 },
                 new PolarData{ x="2008", y= 27 },
                 new PolarData{ x="2009", y= 32 },
                 new PolarData{ x="2010", y= 35 },
                 new PolarData{ x="2011", y= 30 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
        {
            public string x;
            public double y;
        }

Radar Chart

To render a radar series, use series type as Radar.

Draw Type

Line

To render a line draw type, use series drawType as Line. isClosed property specifies whether to join start and end point of a line series used in polar chart to form a closed path. Default value of isClosed is true.

razor
radar-line.cs
@using Syncfusion.EJ2;
@section ControlsSection{
  @(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Radar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.Line)
            .Name("Warmest")
            .XName("xValue")
            .YName("yValue")
            .Width(2)
            .Marker(ViewBag.marker1)
            .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
             .Title("Months")
      )
      .PrimaryYAxis(yaxis =>
          yaxis.Title("Temperature (Celsius)").LabelFormat("{value}°C")
                 .Interval(10)
                 .Minimum(-25)
                 .Maximum(25)
                 .EdgeLabelPlacement(Syncfusion.EJ2.Charts.EdgeLabelPlacement.Shift)
      )
      .Title("Alaska Weather Statistics - 2016").Tooltip(tp=>tp.Enable(true)).Load("load").Render()
      )
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
                 new PolarData{ x=2005, y = 28 },
                 new PolarData{ x=2006, y = 25 },
                 new PolarData{ x=2007, y = 26 }, 
                 new PolarData{ x=2008, y = 27 },
                 new PolarData{ x=2009, y = 32 }, 
                 new PolarData{ x=2010, y = 35 },
                 new PolarData{ x=2011, y = 30 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
        {
            public double x;
            public double y;
        }

Customization

Start Angle

You can customize the start angle of the polar series using startAngle property. By default, startAngle is 0 degree.

razor
start-angle.cs
@using Syncfusion.EJ2;
@section ControlsSection{
  @(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.Column)
            .Name("Warmest")
            .XName("xValue")
            .YName("yValue")
            .Width(2)
            .Marker(ViewBag.marker1)
            .StartAngle(90)
            .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
             .Title("Months")
      )
      .PrimaryYAxis(yaxis =>
          yaxis.Title("Temperature (Celsius)").LabelFormat("{value}°C")
                 .Interval(10)
                 .Minimum(-25)
                 .Maximum(25)
                 .EdgeLabelPlacement(Syncfusion.EJ2.Charts.EdgeLabelPlacement.Shift)
      )
      .Title("Alaska Weather Statistics - 2016").Tooltip(tp=>tp.Enable(true)).Load("load").Render()
      )
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
                 new PolarData{ x=2005, y = 28 },
                 new PolarData{ x=2006, y = 25 },
                 new PolarData{ x=2007, y = 26 },
                 new PolarData{ x=2008, y = 27 },
                 new PolarData{ x=2009, y = 32 },
                 new PolarData{ x=2010, y = 35 },
                 new PolarData{ x=2011, y = 30 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
        {
            public double x;
            public double y;
        }

Coefficient in axis

You can customize the radius of the polar series and radar series using coefficient property. By default, coefficient is 100.

razor
co-efficient.cs
@using Syncfusion.EJ2;
@section ControlsSection{
  @(Html.EJS().Chart("container")
    .Series(sr =>
    {
        sr.Type(Syncfusion.EJ2.Charts.ChartSeriesType.Polar)
            .DrawType(Syncfusion.EJ2.Charts.ChartDrawType.Area)
            .Name("Warmest")
            .XName("xValue")
            .YName("yValue")
            .Width(2)
            .Marker(ViewBag.marker1)
            .DataSource(ViewBag.dataSource).Add();
    })
      .PrimaryXAxis(xaxis =>
         xaxis.ValueType(Syncfusion.EJ2.Charts.ValueType.Category)
             .LabelPlacement(Syncfusion.EJ2.Charts.LabelPlacement.OnTicks)
             .Interval(1)
             .Coefficient(100)
             .Title("Months")
      )
      .PrimaryYAxis(yaxis =>
          yaxis.Title("Temperature (Celsius)").LabelFormat("{value}°C")
                 .Interval(10)
                 .Minimum(-25)
                 .Maximum(25)
                 .EdgeLabelPlacement(Syncfusion.EJ2.Charts.EdgeLabelPlacement.Shift)
      )
      .Title("Alaska Weather Statistics - 2016").Tooltip(tp=>tp.Enable(true)).Load("load").Render()
      )
}
public IActionResult Index()
        {
            List<PolarData> chartData = new List<PolarData>
            {
                 new PolarData{ x=2005, y = 28 },
                 new PolarData{ x=2006, y = 25 },
                 new PolarData{ x=2007, y = 26 },
                 new PolarData{ x=2008, y = 27 },
                 new PolarData{ x=2009, y = 32 },
                 new PolarData{ x=2010, y = 35 },
                 new PolarData{ x=2011, y = 30 }
            };
            ViewBag.dataSource = chartData;
            return View();
        }
        public class PolarData
        {
            public double x;
            public double y;
        }

See Also