Nevron .NET Vision Documentation
Polar Axis Anchors

Polar axis anchors allow you to position a polar axis inside the polar model space. There are two types of polar anchors - dock and cross - the first one allows you to dock polar axes to one of the six polar docking zones and the second one allows you to cross a polar axis with another axis with different orientation.

Dock Polar Anchor

The following picture shows the possible polar chart docking zones:

On this image there are three axes - a green value axis docked to the left dock zone, a red value axis docked to the bottom zone and an angular axis docked to the outer polar rim. The Top and Right dock zones are not used by this chart and are shown with two rectangles, showing where axes will appear if docked there.

Note that there is a significant difference between docking an axis to one of the cartesian dock zones (left, top, right, bottom) or to the outer rim. In the first four cases the axis will be able to scale values of the series displayed by the chart and in the second case it will scale angles. Usually when you dock polar axes to the outer rim zone you should also assign an angular scale configurator to them.

The following code snippet will dock the default polar value axis to the bottom polar dock zone:

 

C#
Copy Code

NPolarAxis axis = (NPolarAxis)polarChart.Axis(StandardAxis.Polar);
axis.Anchor =
new NDockPolarAxisAnchor(PolarAxisDockZone.Bottom);

Visual Basic
Copy Code

Dim axis As NPolarAxis = CType(polarChart.Axis(StandardAxis.Polar), NPolarAxis)
axis.Anchor =
New NDockPolarAxisAnchor(PolarAxisDockZone.Bottom)

Cross Polar Anchor

The cross polar anchor allows for the crossing of axes in polar model space. The following picture illustrates this:

On the above picture there are three axes - one value axis scaling values in the range [0, 150] and two angular axes denoting angles in degrees (red axis) and grads (green axis). The red axis is docked to the outer rim, while the green axis is crossed at value 113 with the value axis. The value axis is also crossed at 0 with the angle axis. The following code shows how to change the value axis crossing to 90 degrees:

C#
Copy Code

NPolarAxis valueAxis = (NPolarAxis)polarChart.Axis(StandardAxis.Polar);
NPolarAxis angleAxis = (NPolarAxis)polarChart.Axis(StandardAxis.PolarAngle);
   
NCrossPolarAxisAnchor anchor = new NCrossPolarAxisAnchor(PolarAxisOrientation.Value);
anchor.Crossings.Add(new NValueAxisCrossing(angleAxis, 90));

valueAxis.Anchor = anchor;

Visual Basic
Copy Code

Dim polarChart As New NPolarChart()
Dim valueAxis As NPolarAxis = polarChart.Axis(StandardAxis.Polar)
Dim angleAxis As NPolarAxis = polarChart.Axis(StandardAxis.PolarAngle)

Dim anchor As New NCrossPolarAxisAnchor(PolarAxisOrientation.Value)
anchor.Crossings.Add(New NValueAxisCrossing(angleAxis, 90))

valueAxis.Anchor = anchor

The effect from this code results in the following configuration of the value axis relative to the degree axis:

Axis Reflection

Both the cross and dock polar anchors have a property called PaintReflection, which is regarded when the axis is positioned as a value axis. The following code configures a cross value anchor to use reflection for the axis:

C#
Copy Code
NPolarAxis axis = (NPolarAxis)polarChart.Axis(StandardAxis.Polar);
NCrossPolarAxisAnchor crossAnchor = new NCrossPolarAxisAnchor(PolarAxisOrientation.Value);
crossAnchor.PaintReflection = true;
axis.Anchor = crossAnchor;
Visual Basic
Copy Code
Dim axis As NPolarAxis = polarChart.Axis(StandardAxis.Polar)
Dim crossAnchor As New NCrossPolarAxisAnchor(PolarAxisOrientation.Value)
crossAnchor.PaintReflection = True
axis.Anchor = crossAnchor

The effect of this code is shown on the following picture:

Related Examples

Windows Forms: Chart Gallery\Polar\Value Axis Position

Windows Forms: Chart Gallery\Polar\Angle Axis Position

Web Forms: Chart Gallery\Polar\Value Axis Position

Web Forms: Chart Gallery\Polar\Angle Axis Position

See Also

Chart

 

 


©2017. Nevron Software LLC.

Send Feedback