// can't yet format YamlFrontmatter (["title: Styling polar layouts"; "category: Polar Charts"; "categoryindex: 9 "; "index: 3"], Some { StartLine = 2 StartColumn = 0 EndLine = 6 EndColumn = 8 }) to pynb markdown

In [ ]:
#r "nuget: Plotly.NET, 2.0.0-preview.16"
#r "nuget: Plotly.NET.Interactive, 2.0.0-preview.16"

Styling polar layouts¶

Summary: This example shows how to style polar layouts in F#.

let's first create some data for the purpose of creating example charts:

In :
open Plotly.NET

let r  = [ 1; 2; 3; 4; 5; 6; 7;] |> List.map ((*) 10000)
let r2 = [ 5; 6; 7; 1; 2; 3; 4;] |> List.map ((*) 10000)
let r3 = [ 3; 1; 5; 2; 8; 7; 5;] |> List.map ((*) 10000)

let t  = [0; 45; 90; 135; 200; 320; 184;]

Consider this combined polar chart:

In :
let combinedPolar =
[
Chart.PointPolar(r,t,Name="PointPolar")
Chart.LinePolar(r2,t,Name="LinePolar", ShowMarkers = true)
Chart.SplinePolar(r3,t,Name="SplinePolar", ShowMarkers = true)
]

|> Chart.combine
In [ ]:
combinedPolar
Out[ ]:

Styling the polar layout¶

Use the Chart.withPolar function and initialize a Polar layout with the desired looks

In :
open Plotly.NET.LayoutObjects

let styledPolar =
combinedPolar
|> Chart.withPolar(
Polar.init(
Sector= (0., 270.),
Hole=0.1
)
)
In [ ]:
styledPolar
Out[ ]:

You could pass these axes to Chart.withPolar, but for the case where you want to specifically set the angular or radial axis, there are the Chart.withAngularAxis and Chart.withRadialAxis functions:

In :
let styledPolar2 =
styledPolar
|> Chart.withAngularAxis(
AngularAxis.init(
Color=Color.fromString "darkblue"
)
)