Skip to content

Commit 59e0654

Browse files
muehlmuehl
authored andcommitted
Introduce DynamicObject
1 parent b502eee commit 59e0654

24 files changed

+1974
-8527
lines changed

src/FSharp.Plotly/ApplyHelper.fs

Lines changed: 0 additions & 98 deletions
This file was deleted.

src/FSharp.Plotly/Axis.fs

Lines changed: 155 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
namespace FSharp.Plotly
2+
3+
/// Module containing plotly axis
4+
module Axis =
5+
6+
/// LinearAxis type inherits from dynamic object
7+
type LinearAxis () =
8+
inherit DynamicObj ()
9+
10+
/// Radialaxis type inherits from dynamic object
11+
type RadialAxis () =
12+
inherit DynamicObj ()
13+
14+
/// Angularaxis type inherits from dynamic object
15+
type AngularAxis () =
16+
inherit DynamicObj ()
17+
18+
/// Init LinearAxis type
19+
let initLinearAxis (applyStyle:LinearAxis->LinearAxis) =
20+
LinearAxis() |> applyStyle
21+
22+
/// Init Radialaxis type
23+
let initRadialaxis (applyStyle:RadialAxis->RadialAxis) =
24+
RadialAxis() |> applyStyle
25+
26+
/// Init Angularaxis type
27+
let initAngularaxis (applyStyle:AngularAxis->AngularAxis) =
28+
AngularAxis() |> applyStyle
29+
30+
31+
/// Static function to apply styles to axis types
32+
type AxidStyle =
33+
34+
// Applies the styles to LinearAxis()
35+
static member LinearAxis
36+
(
37+
?AxisType,
38+
?Title,
39+
?Titlefont:Font,
40+
?Autorange,
41+
?Rangemode,
42+
?Range,
43+
?Fixedrange,
44+
?Tickmode,
45+
?nTicks,
46+
?Tick0,
47+
?dTick,
48+
?Tickvals,
49+
?Ticktext,
50+
?Ticks,
51+
?Mirror,
52+
?Ticklen,
53+
?Tickwidth,
54+
?Tickcolor,
55+
?Showticklabels,
56+
?Tickfont:Font,
57+
?Tickangle,
58+
?Tickprefix,
59+
?Showtickprefix,
60+
?Ticksuffix,
61+
?Showticksuffix,
62+
?Showexponent,
63+
?Exponentformat,
64+
?Tickformat,
65+
?Hoverformat,
66+
?Showline,
67+
?Linecolor,
68+
?Linewidth,
69+
?Showgrid,
70+
?Gridcolor,
71+
?Gridwidth,
72+
?Zeroline,
73+
?Zerolinecolor,
74+
?Zerolinewidth,
75+
?Anchor,
76+
?Side,
77+
?Overlaying,
78+
?Domain,
79+
?Position,
80+
?IsSubplotObj,
81+
?Tickvalssrc,
82+
?Ticktextsrc,
83+
?Showspikes,
84+
?Spikesides,
85+
?Spikethickness,
86+
?Spikecolor,
87+
?Showbackground,
88+
?Backgroundcolor,
89+
?Showaxeslabels
90+
) =
91+
(fun (axis:LinearAxis) ->
92+
AxisType |> DynObj.setValueOptBy axis "type" StyleParam.AxisType.convert
93+
Title |> DynObj.setValueOpt axis "title"
94+
95+
Autorange |> DynObj.setValueOptBy axis "autorange" StyleParam.AutoRange.convert
96+
Rangemode |> DynObj.setValueOptBy axis "rangemode" StyleParam.RangeMode.convert
97+
Range |> DynObj.setValueOptBy axis "range" StyleParam.RangeValues.convert
98+
Fixedrange |> DynObj.setValueOpt axis "fixedrange"
99+
Tickmode |> DynObj.setValueOptBy axis "tickmode" StyleParam.TickMode.convert
100+
nTicks |> DynObj.setValueOpt axis "nticks"
101+
Tick0 |> DynObj.setValueOpt axis "tick0"
102+
dTick |> DynObj.setValueOpt axis "dtick"
103+
Tickvals |> DynObj.setValueOpt axis "tickvals"
104+
Ticktext |> DynObj.setValueOpt axis "ticktext"
105+
Ticks |> DynObj.setValueOptBy axis "ticks" StyleParam.TickOptions.convert
106+
Mirror |> DynObj.setValueOptBy axis "mirror" StyleParam.Mirror.convert
107+
Ticklen |> DynObj.setValueOpt axis "ticklen"
108+
Tickwidth |> DynObj.setValueOpt axis "tickwidth"
109+
Tickcolor |> DynObj.setValueOpt axis "tickcolor"
110+
Showticklabels |> DynObj.setValueOpt axis "showticklabels"
111+
112+
Tickangle |> DynObj.setValueOpt axis "tickangle"
113+
Tickprefix |> DynObj.setValueOpt axis "tickprefix"
114+
Showtickprefix |> DynObj.setValueOptBy axis "showtickprefix" StyleParam.ShowTickOption.convert
115+
Ticksuffix |> DynObj.setValueOpt axis "ticksuffix"
116+
Showticksuffix |> DynObj.setValueOptBy axis "showticksuffix" StyleParam.ShowTickOption.convert
117+
Showexponent |> DynObj.setValueOptBy axis "showexponent" StyleParam.ShowExponent.convert
118+
Exponentformat |> DynObj.setValueOptBy axis "exponentformat" StyleParam.ExponentFormat.convert
119+
Tickformat |> DynObj.setValueOpt axis "tickformat"
120+
Hoverformat |> DynObj.setValueOpt axis "hoverformat"
121+
Showline |> DynObj.setValueOpt axis "showline"
122+
Linecolor |> DynObj.setValueOpt axis "linecolor"
123+
Linewidth |> DynObj.setValueOpt axis "linewidth"
124+
Showgrid |> DynObj.setValueOpt axis "showgrid"
125+
Gridcolor |> DynObj.setValueOpt axis "gridcolor"
126+
Gridwidth |> DynObj.setValueOpt axis "gridwidth"
127+
Zeroline |> DynObj.setValueOpt axis "zeroline"
128+
Zerolinecolor |> DynObj.setValueOpt axis "zerolinecolor"
129+
Zerolinewidth |> DynObj.setValueOpt axis "zerolinewidth"
130+
Anchor |> DynObj.setValueOpt axis "anchor"
131+
Side |> DynObj.setValueOptBy axis "side" StyleParam.Side.convert
132+
Overlaying |> DynObj.setValueOpt axis "overlaying"
133+
Domain |> DynObj.setValueOptBy axis "domain" StyleParam.RangeValues.convert
134+
Position |> DynObj.setValueOpt axis "position"
135+
IsSubplotObj |> DynObj.setValueOpt axis "_isSubplotObj"
136+
Tickvalssrc |> DynObj.setValueOpt axis "tickvalssrc"
137+
Ticktextsrc |> DynObj.setValueOpt axis "ticktextsrc"
138+
Showspikes |> DynObj.setValueOpt axis "showspikes"
139+
Spikesides |> DynObj.setValueOpt axis "spikesides"
140+
Spikethickness |> DynObj.setValueOpt axis "spikethickness"
141+
Spikecolor |> DynObj.setValueOpt axis "spikecolor"
142+
Showbackground |> DynObj.setValueOpt axis "showbackground"
143+
Backgroundcolor |> DynObj.setValueOpt axis "backgroundcolor"
144+
Showaxeslabels |> DynObj.setValueOpt axis "showaxeslabels"
145+
146+
//Update
147+
Titlefont |> DynObj.setValueOpt axis "titlefont"
148+
Tickfont |> DynObj.setValueOpt axis "tickfont"
149+
150+
axis
151+
)
152+
153+
154+
155+

0 commit comments

Comments
 (0)