Skip to content

Commit b54c023

Browse files
committed
Improve Chart.BoxPlot, add outlierwidth to marker
1 parent efdb115 commit b54c023

3 files changed

Lines changed: 99 additions & 46 deletions

File tree

src/Plotly.NET/ChartAPI/Chart2D.fs

Lines changed: 93 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1483,65 +1483,112 @@ module Chart2D =
14831483
[<Extension>]
14841484
static member BoxPlot
14851485
(
1486-
[<Optional;DefaultParameterValue(null)>] ?x,
1487-
[<Optional;DefaultParameterValue(null)>] ?y,
1488-
[<Optional;DefaultParameterValue(null)>] ?Name,
1489-
[<Optional;DefaultParameterValue(null)>] ?ShowLegend,
1490-
[<Optional;DefaultParameterValue(null)>] ?Color,
1491-
[<Optional;DefaultParameterValue(null)>] ?Fillcolor,
1492-
[<Optional;DefaultParameterValue(null)>] ?Opacity,
1493-
[<Optional;DefaultParameterValue(null)>] ?Whiskerwidth,
1494-
[<Optional;DefaultParameterValue(null)>] ?Boxpoints,
1495-
[<Optional;DefaultParameterValue(null)>] ?Boxmean,
1496-
[<Optional;DefaultParameterValue(null)>] ?Jitter,
1497-
[<Optional;DefaultParameterValue(null)>] ?Pointpos,
1498-
[<Optional;DefaultParameterValue(null)>] ?Orientation,
1499-
[<Optional;DefaultParameterValue(null)>] ?Marker,
1500-
[<Optional;DefaultParameterValue(null)>] ?Line,
1501-
[<Optional;DefaultParameterValue(null)>] ?Alignmentgroup,
1502-
[<Optional;DefaultParameterValue(null)>] ?Offsetgroup,
1503-
[<Optional;DefaultParameterValue(null)>] ?Notched,
1504-
[<Optional;DefaultParameterValue(null)>] ?NotchWidth,
1505-
[<Optional;DefaultParameterValue(null)>] ?QuartileMethod
1486+
[<Optional;DefaultParameterValue(null)>] ?x : seq<#IConvertible>,
1487+
[<Optional;DefaultParameterValue(null)>] ?y : seq<#IConvertible>,
1488+
[<Optional;DefaultParameterValue(null)>] ?Name : string,
1489+
[<Optional;DefaultParameterValue(null)>] ?ShowLegend : bool,
1490+
[<Optional;DefaultParameterValue(null)>] ?Text : #IConvertible,
1491+
[<Optional;DefaultParameterValue(null)>] ?MultiText : seq<#IConvertible>,
1492+
[<Optional;DefaultParameterValue(null)>] ?Fillcolor : Color,
1493+
[<Optional;DefaultParameterValue(null)>] ?MarkerColor : Color,
1494+
[<Optional;DefaultParameterValue(null)>] ?OutlierColor : Color,
1495+
[<Optional;DefaultParameterValue(null)>] ?OutlierWidth : int,
1496+
[<Optional;DefaultParameterValue(null)>] ?Opacity : float,
1497+
[<Optional;DefaultParameterValue(null)>] ?WhiskerWidth : float,
1498+
[<Optional;DefaultParameterValue(null)>] ?BoxPoints : StyleParam.BoxPoints,
1499+
[<Optional;DefaultParameterValue(null)>] ?BoxMean : StyleParam.BoxMean,
1500+
[<Optional;DefaultParameterValue(null)>] ?Jitter : float,
1501+
[<Optional;DefaultParameterValue(null)>] ?PointPos : float,
1502+
[<Optional;DefaultParameterValue(null)>] ?Orientation : StyleParam.Orientation,
1503+
[<Optional;DefaultParameterValue(null)>] ?Marker : Marker,
1504+
[<Optional;DefaultParameterValue(null)>] ?Line : Line,
1505+
[<Optional;DefaultParameterValue(null)>] ?AlignmentGroup: string,
1506+
[<Optional;DefaultParameterValue(null)>] ?Offsetgroup : string,
1507+
[<Optional;DefaultParameterValue(null)>] ?Notched : bool,
1508+
[<Optional;DefaultParameterValue(null)>] ?NotchWidth : float,
1509+
[<Optional;DefaultParameterValue(null)>] ?QuartileMethod: StyleParam.QuartileMethod
15061510
) =
15071511
Trace2D.initBoxPlot (
15081512
Trace2DStyle.BoxPlot(
1509-
?X=x, ?Y = y,
1510-
?Whiskerwidth=Whiskerwidth,?Boxpoints=Boxpoints,
1511-
?Boxmean=Boxmean,?Jitter=Jitter,?Pointpos=Pointpos,?Orientation=Orientation,?Fillcolor=Fillcolor,
1512-
?Marker=Marker,?Line=Line,?Alignmentgroup=Alignmentgroup,?Offsetgroup=Offsetgroup,?Notched=Notched,?NotchWidth=NotchWidth,?QuartileMethod=QuartileMethod
1513+
?X = x,
1514+
?Y = y,
1515+
?Text = Text,
1516+
?MultiText = MultiText,
1517+
?Whiskerwidth = WhiskerWidth,
1518+
?BoxPoints = BoxPoints,
1519+
?BoxMean = BoxMean,
1520+
?Jitter = Jitter,
1521+
?PointPos = PointPos,
1522+
?Orientation = Orientation,
1523+
?FillColor = Fillcolor,
1524+
?Marker = Marker,
1525+
?Line = Line,
1526+
?AlignmentGroup = AlignmentGroup,
1527+
?OffsetGroup = Offsetgroup,
1528+
?Notched = Notched,
1529+
?NotchWidth = NotchWidth,
1530+
?QuartileMethod = QuartileMethod
15131531
)
15141532
)
15151533
|> TraceStyle.TraceInfo(?Name=Name,?ShowLegend=ShowLegend,?Opacity=Opacity)
1516-
|> TraceStyle.Marker(?Color=Color)
1534+
|> TraceStyle.Marker(?Color=MarkerColor, ?OutlierColor=OutlierColor, ?OutlierWidth=OutlierWidth)
15171535
|> GenericChart.ofTraceObject
15181536

15191537

15201538
/// Displays the distribution of data based on the five number summary: minimum, first quartile, median, third quartile, and maximum.
15211539
[<Extension>]
1522-
static member BoxPlot(xy,
1523-
[<Optional;DefaultParameterValue(null)>] ?Name,
1524-
[<Optional;DefaultParameterValue(null)>] ?ShowLegend,
1525-
[<Optional;DefaultParameterValue(null)>] ?Color,
1526-
[<Optional;DefaultParameterValue(null)>] ?Fillcolor,
1527-
[<Optional;DefaultParameterValue(null)>] ?Opacity,
1528-
[<Optional;DefaultParameterValue(null)>] ?Whiskerwidth,
1529-
[<Optional;DefaultParameterValue(null)>] ?Boxpoints,
1530-
[<Optional;DefaultParameterValue(null)>] ?Boxmean,
1531-
[<Optional;DefaultParameterValue(null)>] ?Jitter,
1532-
[<Optional;DefaultParameterValue(null)>] ?Pointpos,
1533-
[<Optional;DefaultParameterValue(null)>] ?Orientation,
1534-
[<Optional;DefaultParameterValue(null)>] ?Marker,
1535-
[<Optional;DefaultParameterValue(null)>] ?Line,
1536-
[<Optional;DefaultParameterValue(null)>] ?Alignmentgroup,
1537-
[<Optional;DefaultParameterValue(null)>] ?Offsetgroup,
1538-
[<Optional;DefaultParameterValue(null)>] ?Notched,
1539-
[<Optional;DefaultParameterValue(null)>] ?NotchWidth,
1540-
[<Optional;DefaultParameterValue(null)>] ?QuartileMethod
1540+
static member BoxPlot(
1541+
xy: seq<#IConvertible * #IConvertible>,
1542+
[<Optional;DefaultParameterValue(null)>] ?Name : string,
1543+
[<Optional;DefaultParameterValue(null)>] ?ShowLegend : bool,
1544+
[<Optional;DefaultParameterValue(null)>] ?Text : #IConvertible,
1545+
[<Optional;DefaultParameterValue(null)>] ?MultiText : seq<#IConvertible>,
1546+
[<Optional;DefaultParameterValue(null)>] ?Fillcolor : Color,
1547+
[<Optional;DefaultParameterValue(null)>] ?MarkerColor : Color,
1548+
[<Optional;DefaultParameterValue(null)>] ?OutlierColor : Color,
1549+
[<Optional;DefaultParameterValue(null)>] ?OutlierWidth : int,
1550+
[<Optional;DefaultParameterValue(null)>] ?Opacity : float,
1551+
[<Optional;DefaultParameterValue(null)>] ?WhiskerWidth : float,
1552+
[<Optional;DefaultParameterValue(null)>] ?BoxPoints : StyleParam.BoxPoints,
1553+
[<Optional;DefaultParameterValue(null)>] ?BoxMean : StyleParam.BoxMean,
1554+
[<Optional;DefaultParameterValue(null)>] ?Jitter : float,
1555+
[<Optional;DefaultParameterValue(null)>] ?PointPos : float,
1556+
[<Optional;DefaultParameterValue(null)>] ?Orientation : StyleParam.Orientation,
1557+
[<Optional;DefaultParameterValue(null)>] ?Marker : Marker,
1558+
[<Optional;DefaultParameterValue(null)>] ?Line : Line,
1559+
[<Optional;DefaultParameterValue(null)>] ?AlignmentGroup: string,
1560+
[<Optional;DefaultParameterValue(null)>] ?Offsetgroup : string,
1561+
[<Optional;DefaultParameterValue(null)>] ?Notched : bool,
1562+
[<Optional;DefaultParameterValue(null)>] ?NotchWidth : float,
1563+
[<Optional;DefaultParameterValue(null)>] ?QuartileMethod: StyleParam.QuartileMethod
15411564
) =
15421565
let x,y = Seq.unzip xy
1543-
Chart.BoxPlot(x, y, ?Name=Name,?ShowLegend=ShowLegend,?Color=Color,?Fillcolor=Fillcolor,?Opacity=Opacity,?Whiskerwidth=Whiskerwidth,?Boxpoints=Boxpoints,?Boxmean=Boxmean,?Jitter=Jitter,?Pointpos=Pointpos,?Orientation=Orientation,
1544-
?Marker=Marker,?Line=Line,?Alignmentgroup=Alignmentgroup,?Offsetgroup=Offsetgroup,?Notched=Notched,?NotchWidth=NotchWidth,?QuartileMethod=QuartileMethod)
1566+
Chart.BoxPlot(
1567+
x, y,
1568+
?Name = Name ,
1569+
?ShowLegend = ShowLegend ,
1570+
?Text = Text ,
1571+
?MultiText = MultiText ,
1572+
?Fillcolor = Fillcolor ,
1573+
?MarkerColor = MarkerColor ,
1574+
?OutlierColor = OutlierColor ,
1575+
?OutlierWidth = OutlierWidth ,
1576+
?Opacity = Opacity ,
1577+
?WhiskerWidth = WhiskerWidth ,
1578+
?BoxPoints = BoxPoints ,
1579+
?BoxMean = BoxMean ,
1580+
?Jitter = Jitter ,
1581+
?PointPos = PointPos ,
1582+
?Orientation = Orientation ,
1583+
?Marker = Marker ,
1584+
?Line = Line ,
1585+
?AlignmentGroup = AlignmentGroup,
1586+
?Offsetgroup = Offsetgroup ,
1587+
?Notched = Notched ,
1588+
?NotchWidth = NotchWidth ,
1589+
?QuartileMethod = QuartileMethod
1590+
)
1591+
15451592

15461593

15471594
/// Displays the distribution of data based on the five number summary: minimum, first quartile, median, third quartile, and maximum.

src/Plotly.NET/Traces/ObjectAbstractions/Marker.fs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ type Marker () =
3333
[<Optional;DefaultParameterValue(null)>] ?Symbol : StyleParam.MarkerSymbol,
3434
[<Optional;DefaultParameterValue(null)>] ?MultiSymbol : seq<StyleParam.MarkerSymbol>,
3535
[<Optional;DefaultParameterValue(null)>] ?OutlierColor : Color,
36+
[<Optional;DefaultParameterValue(null)>] ?OutlierWidth : int,
3637
[<Optional;DefaultParameterValue(null)>] ?Maxdisplayed : int,
3738
[<Optional;DefaultParameterValue(null)>] ?ReverseScale : bool,
3839
[<Optional;DefaultParameterValue(null)>] ?ShowScale : bool,
@@ -64,6 +65,7 @@ type Marker () =
6465
?Symbol = Symbol ,
6566
?MultiSymbol = MultiSymbol ,
6667
?OutlierColor = OutlierColor ,
68+
?OutlierWidth = OutlierWidth ,
6769
?Maxdisplayed = Maxdisplayed ,
6870
?ReverseScale = ReverseScale ,
6971
?ShowScale = ShowScale ,
@@ -95,6 +97,7 @@ type Marker () =
9597
[<Optional;DefaultParameterValue(null)>] ?Symbol : StyleParam.MarkerSymbol,
9698
[<Optional;DefaultParameterValue(null)>] ?MultiSymbol : seq<StyleParam.MarkerSymbol>,
9799
[<Optional;DefaultParameterValue(null)>] ?OutlierColor : Color,
100+
[<Optional;DefaultParameterValue(null)>] ?OutlierWidth : int,
98101
[<Optional;DefaultParameterValue(null)>] ?Maxdisplayed : int,
99102
[<Optional;DefaultParameterValue(null)>] ?ReverseScale : bool,
100103
[<Optional;DefaultParameterValue(null)>] ?ShowScale : bool,
@@ -121,6 +124,7 @@ type Marker () =
121124
Pattern |> DynObj.setValueOpt marker "pattern"
122125
(Symbol, MultiSymbol) |> DynObj.setSingleOrMultiOptBy marker "symbol" StyleParam.MarkerSymbol.convert
123126
OutlierColor |> DynObj.setValueOpt marker "outliercolor"
127+
OutlierWidth |> DynObj.setValueOpt marker "outlierwidth"
124128
Maxdisplayed |> DynObj.setValueOpt marker "maxdisplayed"
125129
ReverseScale |> DynObj.setValueOpt marker "reversescale"
126130
ShowScale |> DynObj.setValueOpt marker "showscale"

src/Plotly.NET/Traces/Trace.fs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,7 @@ type TraceStyle() =
156156
[<Optional;DefaultParameterValue(null)>] ?Symbol : StyleParam.MarkerSymbol,
157157
[<Optional;DefaultParameterValue(null)>] ?MultiSymbol : seq<StyleParam.MarkerSymbol>,
158158
[<Optional;DefaultParameterValue(null)>] ?OutlierColor : Color,
159+
[<Optional;DefaultParameterValue(null)>] ?OutlierWidth : int,
159160
[<Optional;DefaultParameterValue(null)>] ?Maxdisplayed : int,
160161
[<Optional;DefaultParameterValue(null)>] ?ReverseScale : bool,
161162
[<Optional;DefaultParameterValue(null)>] ?ShowScale : bool,
@@ -189,6 +190,7 @@ type TraceStyle() =
189190
?Symbol = Symbol ,
190191
?MultiSymbol = MultiSymbol ,
191192
?OutlierColor = OutlierColor ,
193+
?OutlierWidth = OutlierWidth ,
192194
?Maxdisplayed = Maxdisplayed ,
193195
?ReverseScale = ReverseScale ,
194196
?ShowScale = ShowScale ,

0 commit comments

Comments
 (0)