Skip to content

Commit 8195026

Browse files
committed
Fix Pie markers, finish funnelarea chart API
1 parent da939bb commit 8195026

File tree

1 file changed

+99
-33
lines changed

1 file changed

+99
-33
lines changed

Diff for: src/Plotly.NET/ChartAPI/ChartDomain.fs

+99-33
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ module ChartDomain =
7777
?MultiText = MultiText,
7878
?TextPosition = TextPosition,
7979
?MultiTextPosition = MultiTextPosition,
80+
Marker = marker,
8081
?TextInfo = TextInfo,
8182
?Direction = Direction,
8283
?Hole = Hole,
@@ -208,7 +209,6 @@ module ChartDomain =
208209
[<Optional; DefaultParameterValue(null)>] ?Name: string,
209210
[<Optional; DefaultParameterValue(null)>] ?ShowLegend: bool,
210211
[<Optional; DefaultParameterValue(null)>] ?Opacity: float,
211-
[<Optional; DefaultParameterValue(null)>] ?Labels: seq<#IConvertible>,
212212
[<Optional; DefaultParameterValue(null)>] ?Pull: float,
213213
[<Optional; DefaultParameterValue(null)>] ?Text: #IConvertible,
214214
[<Optional; DefaultParameterValue(null)>] ?MultiText: seq<#IConvertible>,
@@ -259,48 +259,114 @@ module ChartDomain =
259259
[<Extension>]
260260
static member FunnelArea
261261
(
262-
[<Optional; DefaultParameterValue(null)>] ?Values,
263-
[<Optional; DefaultParameterValue(null)>] ?Labels,
264-
[<Optional; DefaultParameterValue(null)>] ?dLabel,
265-
[<Optional; DefaultParameterValue(null)>] ?Label0,
266-
[<Optional; DefaultParameterValue(null)>] ?Name,
267-
[<Optional; DefaultParameterValue(null)>] ?ShowLegend,
268-
[<Optional; DefaultParameterValue(null)>] ?Opacity,
269-
[<Optional; DefaultParameterValue(null)>] ?Color,
270-
[<Optional; DefaultParameterValue(null)>] ?Line,
271-
[<Optional; DefaultParameterValue(null)>] ?Text,
272-
[<Optional; DefaultParameterValue(null)>] ?TextPosition,
273-
[<Optional; DefaultParameterValue(null)>] ?X,
274-
[<Optional; DefaultParameterValue(null)>] ?Y,
275-
[<Optional; DefaultParameterValue(null)>] ?Row,
276-
[<Optional; DefaultParameterValue(null)>] ?Column,
277-
[<Optional; DefaultParameterValue(null)>] ?Aspectratio,
278-
[<Optional; DefaultParameterValue(null)>] ?Baseratio,
279-
[<Optional; DefaultParameterValue(null)>] ?Insidetextfont,
280-
[<Optional; DefaultParameterValue(null)>] ?Scalegroup,
281-
[<Optional; DefaultParameterValue(true)>] ?UseDefaults: bool
262+
values: seq<#IConvertible>,
263+
[<Optional; DefaultParameterValue(null)>] ?Name: string,
264+
[<Optional; DefaultParameterValue(null)>] ?ShowLegend: bool,
265+
[<Optional; DefaultParameterValue(null)>] ?Opacity: float,
266+
[<Optional; DefaultParameterValue(null)>] ?Labels: seq<#IConvertible>,
267+
[<Optional; DefaultParameterValue(null)>] ?Text: #IConvertible,
268+
[<Optional; DefaultParameterValue(null)>] ?MultiText: seq<#IConvertible>,
269+
[<Optional; DefaultParameterValue(null)>] ?TextPosition: StyleParam.TextPosition,
270+
[<Optional; DefaultParameterValue(null)>] ?MultiTextPosition: seq<StyleParam.TextPosition>,
271+
[<Optional; DefaultParameterValue(null)>] ?SectionColors: seq<Color>,
272+
[<Optional; DefaultParameterValue(null)>] ?SectionOutlineColor: Color,
273+
[<Optional; DefaultParameterValue(null)>] ?SectionOutlineWidth: float,
274+
[<Optional; DefaultParameterValue(null)>] ?SectionOutlineMultiWidth: seq<float>,
275+
[<Optional; DefaultParameterValue(null)>] ?SectionOutline: Line,
276+
[<Optional; DefaultParameterValue(null)>] ?Marker: Marker,
277+
[<Optional; DefaultParameterValue(null)>] ?TextInfo: StyleParam.TextInfo,
278+
[<Optional; DefaultParameterValue(null)>] ?AspectRatio: float,
279+
[<Optional; DefaultParameterValue(null)>] ?BaseRatio: float,
280+
[<Optional; DefaultParameterValue(null)>] ?UseDefaults: bool
282281
) =
283282

283+
284284
let useDefaults = defaultArg UseDefaults true
285285

286+
let outline =
287+
SectionOutline
288+
|> Option.defaultValue (Line.init ())
289+
|> Line.style (
290+
?Color = SectionOutlineColor,
291+
?Width = SectionOutlineWidth,
292+
?MultiWidth = SectionOutlineMultiWidth
293+
)
294+
let marker =
295+
Marker
296+
|> Option.defaultValue (TraceObjects.Marker.init ())
297+
|> TraceObjects.Marker.style (
298+
?Colors = SectionColors,
299+
Outline = outline
300+
)
301+
302+
286303
TraceDomain.initFunnelArea (
287304
TraceDomainStyle.FunnelArea(
288-
?Values = Values,
289-
?Labels = Labels,
290-
?dLabel = dLabel,
291-
?Label0 = Label0,
292-
?Aspectratio = Aspectratio,
293-
?Baseratio = Baseratio,
294-
?Insidetextfont = Insidetextfont,
295-
?Scalegroup = Scalegroup
305+
Values = values,
306+
?Name = Name,
307+
?ShowLegend = ShowLegend,
308+
?Opacity = Opacity,
309+
?Labels = Labels,
310+
?Text = Text,
311+
?MultiText = MultiText,
312+
?TextPosition = TextPosition,
313+
?MultiTextPosition = MultiTextPosition,
314+
Marker = marker,
315+
?TextInfo = TextInfo,
316+
?AspectRatio = AspectRatio,
317+
?BaseRatio = BaseRatio
296318
)
297319
)
298-
|> TraceStyle.TraceInfo(?Name = Name, ?ShowLegend = ShowLegend, ?Opacity = Opacity)
299-
|> TraceStyle.Marker(?Color = Color, ?Outline = Line)
300-
|> TraceStyle.Domain(?X = X, ?Y = Y, ?Row = Row, ?Column = Column)
301-
|> TraceStyle.TextLabel(?Text = Text, ?Textposition = TextPosition)
302320
|> GenericChart.ofTraceObject useDefaults
303321

322+
/// Creates a FunnelArea chart.
323+
[<Extension>]
324+
static member FunnelArea
325+
(
326+
valuesLabels: seq<#IConvertible * #IConvertible>,
327+
[<Optional; DefaultParameterValue(null)>] ?Name : string,
328+
[<Optional; DefaultParameterValue(null)>] ?ShowLegend : bool,
329+
[<Optional; DefaultParameterValue(null)>] ?Opacity : float,
330+
[<Optional; DefaultParameterValue(null)>] ?Text : #IConvertible,
331+
[<Optional; DefaultParameterValue(null)>] ?MultiText : seq<#IConvertible>,
332+
[<Optional; DefaultParameterValue(null)>] ?TextPosition : StyleParam.TextPosition,
333+
[<Optional; DefaultParameterValue(null)>] ?MultiTextPosition : seq<StyleParam.TextPosition>,
334+
[<Optional; DefaultParameterValue(null)>] ?SectionColors : seq<Color>,
335+
[<Optional; DefaultParameterValue(null)>] ?SectionOutlineColor : Color,
336+
[<Optional; DefaultParameterValue(null)>] ?SectionOutlineWidth : float,
337+
[<Optional; DefaultParameterValue(null)>] ?SectionOutlineMultiWidth : seq<float>,
338+
[<Optional; DefaultParameterValue(null)>] ?SectionOutline : Line,
339+
[<Optional; DefaultParameterValue(null)>] ?Marker : Marker,
340+
[<Optional; DefaultParameterValue(null)>] ?TextInfo : StyleParam.TextInfo,
341+
[<Optional; DefaultParameterValue(null)>] ?AspectRatio : float,
342+
[<Optional; DefaultParameterValue(null)>] ?BaseRatio : float,
343+
[<Optional; DefaultParameterValue(null)>] ?UseDefaults : bool
344+
) =
345+
let values, labels = Seq.unzip valuesLabels
346+
347+
Chart.FunnelArea(
348+
values,
349+
Labels = labels,
350+
?Name = Name ,
351+
?ShowLegend = ShowLegend ,
352+
?Opacity = Opacity ,
353+
?Text = Text ,
354+
?MultiText = MultiText ,
355+
?TextPosition = TextPosition ,
356+
?MultiTextPosition = MultiTextPosition ,
357+
?SectionColors = SectionColors ,
358+
?SectionOutlineColor = SectionOutlineColor ,
359+
?SectionOutlineWidth = SectionOutlineWidth ,
360+
?SectionOutlineMultiWidth= SectionOutlineMultiWidth,
361+
?SectionOutline = SectionOutline ,
362+
?Marker = Marker ,
363+
?TextInfo = TextInfo ,
364+
?AspectRatio = AspectRatio ,
365+
?BaseRatio = BaseRatio ,
366+
?UseDefaults = UseDefaults
367+
)
368+
369+
304370

305371
/// Creates a sunburst chart. Visualize hierarchical data spanning outward radially from root to leaves.
306372
/// Applies the styles of sundburst plot to TraceObjects

0 commit comments

Comments
 (0)