PolarChart

PolarChart ( appearanceConst ;​ startAngle ;​ arcAngle )

Argument Type Range Default Note
appearanceConst int 0..127 default
startAngle num -360..+360 0 Dimension:[deg]
arcAngle num -360..+360 360 Dimension:[deg]
Description

The PolarChart() function makes it possible to draw two-dimensional values in polar coordinates. The 1st data series in the ChartData() function defines the x-values, the 2nd data series the y-values of the first series, the 3rd and 4th data series in ChartData() the x and y-values of the second series, etc. Use the following formula to convert polar coordinates (r,φ) to Carthesian coordinates (x,y):

  • x = r cos(φ)
  • y = r sin(φ)
POLAR_CHART_01
1

OpenDrawing(160;​160)

2

ChartData(5 7 3 -5 -7 -2 -3;​ /* x-values. */

3

6 3 -6 -4 2 3 6) /* y-values. */

4

PolarChart()

5

/* Set up styles. */

6

FillStyle(1;​#4682b420)

7

BorderStyle(1;​poly;​1;​#4682b4)

8

/* Set up axes. */

9

ScalingOptions(;​;​;​on) /* Hide "0" */

10

AxisLine(all;​0)

11

AxisMajorTicks(all;​0)

12

/* Set up grid. */

13

MajorGridLineWidths(all;​all;​0.25)

14

GridFrame(all;​0.5;​#888)

15

CloseDrawing()

POLAR_CHART_01

The 1st argument appearanceConstants makes it possible to choose between an elliptical form (appearanceConstants = oval), i.e. the entire available area can be made use of, or a circular shape. As the default, all polar charts are drawn circular. In addition, symbols (appearanceConstants = symbol), shadow (appearanceConstants = shadow) and labels (appearanceConstants = label) can be added to charts. All options can be combined by using a plus sign "+". The fills, borders, symbols and shadows can be varied by using the style functions FillColorScheme() , FillStyle() , PictureStyle() , BorderColorScheme() , BorderStyle() , SymbolColorScheme() , SymbolStyle() and ShadowStyle() and the labels by using the five style functions LabelTexts() , LabelStyle() , LabelBackground() , LabelBackgroundOptions() and LabelOptions() .

POLAR_CHART_02
1

OpenDrawing(160;​160)

2

ChartData(5 7 3 -5 -7 -2 -3;​ /* x-values. */

3

6 3 -6 -4 2 3 6) /* y-values. */

4

PolarChart(shadow+symbol)

5

/* Set up styles. */

6

FillStyle(1;​#4682b420)

7

BorderStyle(1;​poly;​1.5;​#4682b4)

8

SymbolStyle(1;​circle;​6;​1;​#4682b4;​;​white)

9

ShadowStyle(all;​2 2 3)

10

/* Set up axes. */

11

ScalingOptions(;​;​;​on) /* Hide "0" */

12

AxisLine(all;​0)

13

AxisMajorTicks(all;​0)

14

/* Set up grid. */

15

MajorGridLineWidths(all;​all;​0.25)

16

GridFrame(all;​0.5;​#888)

17

CloseDrawing()

POLAR_CHART_02
POLAR_CHART_03
1

OpenDrawing(280;​180)

2

ChartData(5 7 3 -5 -7 -2 -3;​ /* 1st series: x-values. */

3

6 3 -6 -4 2 3 6;​ /* 1st series: y-values. */

4

1 4 0 -4 -4 -5;​ /* 2nd series: x-values. */

5

7 3 -7 -7 0 6) /* 2nd series: y-values. */

6

PolarChart(oval+symbol)

7

/* Set up styles. */

8

FillStyle(1;​#4682b420)

9

FillStyle(2;​none)

10

BorderStyle(1;​poly;​1.5;​#4682b4)

11

BorderStyle(2;​smooth;​1;​#c002a0)

12

SymbolStyle(1;​none)

13

SymbolStyle(2;​circle;​5;​1;​#c002a0;​;​white)

14

/* Set up axes. */

15

Scaling(;​linear;​0;​10;​5)

16

ScalingOptions(;​;​;​on) /* Hide "0" */

17

AxisLine(all;​0)

18

AxisMajorTicks(all;​0)

19

/* Set up grid. */

20

MajorGridLineWidths(all;​all;​0.25)

21

GridFrame(all;​0.5;​#888)

22

CloseDrawing()

POLAR_CHART_03

As the default, the points of a series are connected to a polygon. By suppressing both the fill and border using FillStyle(;​none) and BorderStyle(;​none), it is possible to represent the chart values solely by using symbols.

POLAR_CHART_04
1

OpenDrawing(280;​180)

2

ChartData(5 7 3 -5 -7 -2 -3;​ /* x-values. */

3

6 -2 -6 -4 3 2 7) /* y-values. */

4

PolarChart(oval+symbol)

5

/* Set up styles. */

6

FillStyle(1;​none)

7

BorderStyle(1;​none)

8

SymbolStyle(1;​bullet;​5;​1;​#4682b4;​shaded)

9

/* Set up axes. */

10

Scaling(;​linear;​0;​10;​2)

11

ScalingOptions(;​;​;​on) /* Hide "0" */

12

AxisLine(all;​0.25;​gray)

13

AxisMajorTicks(all;​6;​0.25;​gray;​;​center)

14

AxisLabelText(all;​"|u|˚")

15

/* Set up grid. */

16

GridLocation(all;​none) /* Hide grid. */

17

CloseDrawing()

POLAR_CHART_04

The texts for the axis labels are entered by using the AxisLabelText() function. As the default, the axis labels start at the top (12 o'clock) and run clockwise over a range of 360°. By using the arguments startAngle and arcAngle, the position of the 0 degrees line as well as the direction and range (arc angle) of the grid can be defined. By defining a start angle greater than zero all axes are moved clockwise; by entering a negative start angle they are moved counter-clockwise. All angles are to be entered within the range of ±360 degrees. A start angle of 0 degrees is at the top (12 o'clock), of 90 degrees is on the right (3 o'clock) and of -90 degrees is on the left (9 o'clock).

POLAR_CHART_05
1

OpenDrawing(280;​180)

2

ChartData(5 7 3 -5 -7 -2 -3;​ /* x-values. */

3

6 3 -6 -4 2 3 6) /* y-values. */

4

PolarChart(oval+shadow;​90)

5

/* Set up styles. */

6

FillStyle(1;​#ffca5f)

7

BorderStyle(1;​poly;​1.5;​#bd9648)

8

ShadowStyle(all;​2 2 3)

9

/* Set up axes. */

10

Scaling(;​linear;​0;​10;​5)

11

ScalingOptions(;​;​;​on) /* Hide "0" */

12

AxisLine(all;​0)

13

AxisMajorTicks(all;​0)

14

AxisLabelText(all;​"|u|˚")

15

AxisOptions(all;​front)

16

/* Set up grid. */

17

GridLocation(all;​front)

18

MajorGridLineWidths(all;​all;​0.25)

19

GridFrame(all;​0.5;​#888)

20

CloseDrawing()

POLAR_CHART_05
POLAR_CHART_06
1

OpenDrawing(280;​180)

2

ChartData(5 7 3 -5 -7 -2 -3;​ /* x-values. */

3

6 3 -6 -4 2 3 6) /* y-values. */

4

/*  90...0-degrees-line on the right. */

5

/* -360...degrees run counter-clockwise. */

6

PolarChart(oval+shadow;​90;​-360)

7

/* Set up styles. */

8

FillStyle(1;​#ffca5f20)

9

BorderStyle(1;​poly;​1.5;​#bd9648)

10

ShadowStyle(all;​2 2 3)

11

/* Set up axes. */

12

Scaling(;​linear;​0;​10;​5)

13

ScalingOptions(;​;​;​on) /* Hide "0" */

14

AxisLine(all;​0)

15

AxisMajorTicks(all;​0)

16

AxisLabelText(all;​"|u|˚")

17

/* Set up grid. */

18

MajorGridLineWidths(all;​all;​0.25)

19

GridFrame(all;​0.5;​#888)

20

CloseDrawing()

POLAR_CHART_06
Scroll to Top