plotnine 0.15.0a5__py3-none-any.whl → 0.15.0a7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- plotnine/_mpl/layout_manager/_engine.py +2 -2
- plotnine/_mpl/layout_manager/_layout_items.py +6 -2
- plotnine/_mpl/layout_manager/_layout_tree.py +221 -60
- plotnine/_mpl/layout_manager/_spaces.py +98 -28
- plotnine/_mpl/text.py +1 -7
- plotnine/_utils/__init__.py +13 -0
- plotnine/composition/__init__.py +11 -0
- plotnine/{plot_composition/_compose.py → composition/_arrange.py} +64 -119
- plotnine/composition/_beside.py +54 -0
- plotnine/composition/_plot_spacer.py +55 -0
- plotnine/composition/_stack.py +54 -0
- plotnine/geoms/geom_area.py +2 -2
- plotnine/geoms/geom_bar.py +1 -0
- plotnine/geoms/geom_bin_2d.py +6 -2
- plotnine/geoms/geom_boxplot.py +4 -0
- plotnine/geoms/geom_col.py +2 -2
- plotnine/geoms/geom_count.py +6 -2
- plotnine/geoms/geom_density_2d.py +6 -2
- plotnine/geoms/geom_dotplot.py +1 -1
- plotnine/geoms/geom_histogram.py +1 -1
- plotnine/geoms/geom_map.py +2 -2
- plotnine/geoms/geom_pointdensity.py +4 -0
- plotnine/geoms/geom_qq.py +4 -0
- plotnine/geoms/geom_qq_line.py +4 -0
- plotnine/geoms/geom_quantile.py +4 -0
- plotnine/geoms/geom_sina.py +3 -3
- plotnine/geoms/geom_smooth.py +4 -0
- plotnine/geoms/geom_violin.py +4 -0
- plotnine/ggplot.py +12 -26
- plotnine/scales/scale_manual.py +2 -0
- plotnine/stats/stat_bin.py +4 -0
- plotnine/stats/stat_bin_2d.py +4 -0
- plotnine/stats/stat_bindot.py +1 -0
- plotnine/stats/stat_boxplot.py +1 -1
- plotnine/stats/stat_count.py +1 -0
- plotnine/stats/stat_density.py +1 -1
- plotnine/stats/stat_density_2d.py +1 -0
- plotnine/stats/stat_ecdf.py +1 -1
- plotnine/stats/stat_ellipse.py +4 -0
- plotnine/stats/stat_function.py +4 -0
- plotnine/stats/stat_hull.py +4 -0
- plotnine/stats/stat_identity.py +4 -0
- plotnine/stats/stat_pointdensity.py +1 -0
- plotnine/stats/stat_qq.py +1 -0
- plotnine/stats/stat_qq_line.py +1 -0
- plotnine/stats/stat_quantile.py +1 -1
- plotnine/stats/stat_sina.py +1 -1
- plotnine/stats/stat_smooth.py +1 -0
- plotnine/stats/stat_sum.py +4 -0
- plotnine/stats/stat_summary.py +1 -1
- plotnine/stats/stat_summary_bin.py +1 -1
- plotnine/stats/stat_unique.py +4 -0
- plotnine/stats/stat_ydensity.py +1 -1
- plotnine/themes/elements/element_line.py +17 -9
- plotnine/themes/theme_void.py +1 -7
- plotnine/themes/themeable.py +24 -13
- {plotnine-0.15.0a5.dist-info → plotnine-0.15.0a7.dist-info}/METADATA +1 -1
- {plotnine-0.15.0a5.dist-info → plotnine-0.15.0a7.dist-info}/RECORD +62 -60
- plotnine/plot_composition/__init__.py +0 -10
- plotnine/plot_composition/_spacer.py +0 -32
- /plotnine/{plot_composition → composition}/_plotspec.py +0 -0
- {plotnine-0.15.0a5.dist-info → plotnine-0.15.0a7.dist-info}/WHEEL +0 -0
- {plotnine-0.15.0a5.dist-info → plotnine-0.15.0a7.dist-info}/licenses/LICENSE +0 -0
- {plotnine-0.15.0a5.dist-info → plotnine-0.15.0a7.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from copy import deepcopy
|
|
4
|
+
|
|
5
|
+
from plotnine import element_rect, ggplot, theme, theme_void
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class plot_spacer(ggplot):
|
|
9
|
+
"""
|
|
10
|
+
Blank area as wide or as tall as a plot
|
|
11
|
+
|
|
12
|
+
Parameters
|
|
13
|
+
----------
|
|
14
|
+
fill :
|
|
15
|
+
Background color. The default is a transparent area, but it
|
|
16
|
+
can be changed through this parameter.
|
|
17
|
+
|
|
18
|
+
The color can also be modified by adding a [](`~plotnine.theme`)
|
|
19
|
+
and setting the [](`~plotnine.themes.themeable.plot_background`).
|
|
20
|
+
|
|
21
|
+
See Also
|
|
22
|
+
--------
|
|
23
|
+
plotnine.composition.Beside : To arrange plots side by side
|
|
24
|
+
plotnine.composition.Stack : To arrange plots vertically
|
|
25
|
+
plotnine.composition.Arrange : For more on arranging plots
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
def __init__(
|
|
29
|
+
self,
|
|
30
|
+
fill: (
|
|
31
|
+
str
|
|
32
|
+
| tuple[float, float, float]
|
|
33
|
+
| tuple[float, float, float, float]
|
|
34
|
+
| None
|
|
35
|
+
) = None,
|
|
36
|
+
):
|
|
37
|
+
super().__init__()
|
|
38
|
+
self.theme = theme_void()
|
|
39
|
+
if fill:
|
|
40
|
+
self.theme += theme(plot_background=element_rect(fill=fill))
|
|
41
|
+
|
|
42
|
+
def __add__(self, rhs) -> plot_spacer:
|
|
43
|
+
"""
|
|
44
|
+
Add to spacer
|
|
45
|
+
|
|
46
|
+
All added objects are no ops except the `plot_background` in
|
|
47
|
+
in a theme.
|
|
48
|
+
"""
|
|
49
|
+
self = deepcopy(self)
|
|
50
|
+
if isinstance(rhs, theme):
|
|
51
|
+
fill = rhs.getp(("plot_background", "facecolor"))
|
|
52
|
+
self.theme += theme(
|
|
53
|
+
plot_background=element_rect(fill=fill),
|
|
54
|
+
)
|
|
55
|
+
return self
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
from typing import TYPE_CHECKING
|
|
5
|
+
|
|
6
|
+
from ._arrange import Arrange
|
|
7
|
+
|
|
8
|
+
if TYPE_CHECKING:
|
|
9
|
+
from plotnine.ggplot import ggplot
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@dataclass
|
|
13
|
+
class Stack(Arrange):
|
|
14
|
+
"""
|
|
15
|
+
Place plots or compositions on top of each other
|
|
16
|
+
|
|
17
|
+
**Usage**
|
|
18
|
+
|
|
19
|
+
plot / plot
|
|
20
|
+
plot / composition
|
|
21
|
+
composition / plot
|
|
22
|
+
composition / composition
|
|
23
|
+
|
|
24
|
+
Typically, you will use this class through the `/` operator.
|
|
25
|
+
|
|
26
|
+
See Also
|
|
27
|
+
--------
|
|
28
|
+
plotnine.composition.Beside : To arrange plots side by side
|
|
29
|
+
plotnine.composition.plot_spacer : To add a blank space between plots
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
@property
|
|
33
|
+
def nrow(self) -> int:
|
|
34
|
+
return len(self)
|
|
35
|
+
|
|
36
|
+
@property
|
|
37
|
+
def ncol(self) -> int:
|
|
38
|
+
return 1
|
|
39
|
+
|
|
40
|
+
def __truediv__(self, rhs: ggplot | Arrange) -> Arrange:
|
|
41
|
+
"""
|
|
42
|
+
Add rhs as a row
|
|
43
|
+
"""
|
|
44
|
+
# This is an adjacent div i.e. (DIV | rhs) so we collapse the
|
|
45
|
+
# operands into a single operation
|
|
46
|
+
return Stack([*self, rhs])
|
|
47
|
+
|
|
48
|
+
def __or__(self, rhs: ggplot | Arrange) -> Arrange:
|
|
49
|
+
"""
|
|
50
|
+
Add rhs as a column
|
|
51
|
+
"""
|
|
52
|
+
from ._beside import Beside
|
|
53
|
+
|
|
54
|
+
return Beside([self, rhs])
|
plotnine/geoms/geom_area.py
CHANGED
|
@@ -14,12 +14,12 @@ class geom_area(geom_ribbon):
|
|
|
14
14
|
"""
|
|
15
15
|
Area plot
|
|
16
16
|
|
|
17
|
+
{usage}
|
|
18
|
+
|
|
17
19
|
An area plot is a special case of geom_ribbon,
|
|
18
20
|
where the minimum of the range is fixed to 0,
|
|
19
21
|
and the position adjustment defaults to 'stack'.
|
|
20
22
|
|
|
21
|
-
{usage}
|
|
22
|
-
|
|
23
23
|
Parameters
|
|
24
24
|
----------
|
|
25
25
|
{common_parameters}
|
plotnine/geoms/geom_bar.py
CHANGED
plotnine/geoms/geom_bin_2d.py
CHANGED
|
@@ -7,16 +7,20 @@ class geom_bin_2d(geom_rect):
|
|
|
7
7
|
"""
|
|
8
8
|
Heatmap of 2d bin counts
|
|
9
9
|
|
|
10
|
+
{usage}
|
|
11
|
+
|
|
10
12
|
Divides the plane into rectangles, counts the number of
|
|
11
13
|
cases in each rectangle, and then (by default) maps the number
|
|
12
14
|
of cases to the rectangle's fill. This is a useful alternative
|
|
13
15
|
to geom_point in the presence of overplotting.
|
|
14
16
|
|
|
15
|
-
{usage}
|
|
16
|
-
|
|
17
17
|
Parameters
|
|
18
18
|
----------
|
|
19
19
|
{common_parameters}
|
|
20
|
+
|
|
21
|
+
See Also
|
|
22
|
+
--------
|
|
23
|
+
plotnine.stat_bin_2d : The default stat for this `geom`.
|
|
20
24
|
"""
|
|
21
25
|
|
|
22
26
|
DEFAULT_PARAMS = {"stat": "bin_2d", "position": "identity", "na_rm": False}
|
plotnine/geoms/geom_boxplot.py
CHANGED
|
@@ -70,6 +70,10 @@ class geom_boxplot(geom):
|
|
|
70
70
|
fatten : float, default=2
|
|
71
71
|
A multiplicative factor used to increase the size of the
|
|
72
72
|
middle bar across the box.
|
|
73
|
+
|
|
74
|
+
See Also
|
|
75
|
+
--------
|
|
76
|
+
plotnine.stat_boxplot : The default `stat` for this `geom`.
|
|
73
77
|
"""
|
|
74
78
|
|
|
75
79
|
DEFAULT_AES = {
|
plotnine/geoms/geom_col.py
CHANGED
|
@@ -7,13 +7,13 @@ class geom_col(geom_bar):
|
|
|
7
7
|
"""
|
|
8
8
|
Bar plot with base on the x-axis
|
|
9
9
|
|
|
10
|
+
{usage}
|
|
11
|
+
|
|
10
12
|
This is an alternate version of [](`~plotnine.geoms.geom_bar`) that maps
|
|
11
13
|
the height of bars to an existing variable in your data. If
|
|
12
14
|
you want the height of the bar to represent a count of cases,
|
|
13
15
|
use [](`~plotnine.geoms.geom_bar`).
|
|
14
16
|
|
|
15
|
-
{usage}
|
|
16
|
-
|
|
17
17
|
Parameters
|
|
18
18
|
----------
|
|
19
19
|
{common_parameters}
|
plotnine/geoms/geom_count.py
CHANGED
|
@@ -7,15 +7,19 @@ class geom_count(geom_point):
|
|
|
7
7
|
"""
|
|
8
8
|
Plot overlapping points
|
|
9
9
|
|
|
10
|
+
{usage}
|
|
11
|
+
|
|
10
12
|
This is a variant [](`~plotnine.geoms.geom_point`) that counts the number
|
|
11
13
|
of observations at each location, then maps the count to point
|
|
12
14
|
area. It useful when you have discrete data and overplotting.
|
|
13
15
|
|
|
14
|
-
{usage}
|
|
15
|
-
|
|
16
16
|
Parameters
|
|
17
17
|
----------
|
|
18
18
|
{common_parameters}
|
|
19
|
+
|
|
20
|
+
See Also
|
|
21
|
+
--------
|
|
22
|
+
plotnine.stat_sum : The default `stat` for this `geom`.
|
|
19
23
|
"""
|
|
20
24
|
|
|
21
25
|
DEFAULT_PARAMS = {"stat": "sum", "position": "identity", "na_rm": False}
|
|
@@ -7,13 +7,17 @@ class geom_density_2d(geom_path):
|
|
|
7
7
|
"""
|
|
8
8
|
2D density estimate
|
|
9
9
|
|
|
10
|
-
This is a 2d version of [](`~plotnine.geoms.geom_density`).
|
|
11
|
-
|
|
12
10
|
{usage}
|
|
13
11
|
|
|
12
|
+
This is a 2d version of [](`~plotnine.geoms.geom_density`).
|
|
13
|
+
|
|
14
14
|
Parameters
|
|
15
15
|
----------
|
|
16
16
|
{common_parameters}
|
|
17
|
+
|
|
18
|
+
See Also
|
|
19
|
+
--------
|
|
20
|
+
plotnine.stat_density_2d : The default `stat` for this `geom`.
|
|
17
21
|
"""
|
|
18
22
|
|
|
19
23
|
DEFAULT_PARAMS = {
|
plotnine/geoms/geom_dotplot.py
CHANGED
plotnine/geoms/geom_histogram.py
CHANGED
plotnine/geoms/geom_map.py
CHANGED
plotnine/geoms/geom_qq.py
CHANGED
plotnine/geoms/geom_qq_line.py
CHANGED
plotnine/geoms/geom_quantile.py
CHANGED
|
@@ -16,6 +16,10 @@ class geom_quantile(geom_path):
|
|
|
16
16
|
Line end style. This option is applied for solid linetypes.
|
|
17
17
|
linejoin : Literal["round", "miter", "bevel"], default="round"
|
|
18
18
|
Line join style. This option is applied for solid linetypes.
|
|
19
|
+
|
|
20
|
+
See Also
|
|
21
|
+
--------
|
|
22
|
+
plotnine.stat_quantile : The default `stat` for this `geom`.
|
|
19
23
|
"""
|
|
20
24
|
|
|
21
25
|
DEFAULT_AES = {
|
plotnine/geoms/geom_sina.py
CHANGED
|
@@ -7,20 +7,20 @@ class geom_sina(geom_point):
|
|
|
7
7
|
"""
|
|
8
8
|
Draw a sina plot
|
|
9
9
|
|
|
10
|
+
{usage}
|
|
11
|
+
|
|
10
12
|
A sina plot is a data visualization chart suitable for plotting
|
|
11
13
|
any single variable in a multiclass dataset. It is an enhanced
|
|
12
14
|
jitter strip chart, where the width of the jitter is controlled
|
|
13
15
|
by the density distribution of the data within each class.
|
|
14
16
|
|
|
15
|
-
{usage}
|
|
16
|
-
|
|
17
17
|
Parameters
|
|
18
18
|
----------
|
|
19
19
|
{common_parameters}
|
|
20
20
|
|
|
21
21
|
See Also
|
|
22
22
|
--------
|
|
23
|
-
plotnine.stat_sina
|
|
23
|
+
plotnine.stat_sina : The default `stat` for this `geom`.
|
|
24
24
|
|
|
25
25
|
References
|
|
26
26
|
----------
|
plotnine/geoms/geom_smooth.py
CHANGED
|
@@ -34,6 +34,10 @@ class geom_smooth(geom):
|
|
|
34
34
|
How much (vertically) of the legend box should be filled by
|
|
35
35
|
the color that indicates the confidence intervals. Should be
|
|
36
36
|
in the range [0, 1].
|
|
37
|
+
|
|
38
|
+
See Also
|
|
39
|
+
--------
|
|
40
|
+
plotnine.stat_smooth : The default `stat` for this `geom`.
|
|
37
41
|
"""
|
|
38
42
|
|
|
39
43
|
DEFAULT_AES = {
|
plotnine/geoms/geom_violin.py
CHANGED
|
@@ -45,6 +45,10 @@ class geom_violin(geom):
|
|
|
45
45
|
'left-right' # Alternate (left first) half violins by the group
|
|
46
46
|
'right-left' # Alternate (right first) half violins by the group
|
|
47
47
|
```
|
|
48
|
+
|
|
49
|
+
See Also
|
|
50
|
+
--------
|
|
51
|
+
plotnine.stat_ydensity : The default `stat` for this `geom`.
|
|
48
52
|
"""
|
|
49
53
|
|
|
50
54
|
DEFAULT_AES = {
|
plotnine/ggplot.py
CHANGED
|
@@ -13,7 +13,6 @@ from typing import (
|
|
|
13
13
|
Iterable,
|
|
14
14
|
Optional,
|
|
15
15
|
cast,
|
|
16
|
-
overload,
|
|
17
16
|
)
|
|
18
17
|
from warnings import warn
|
|
19
18
|
|
|
@@ -53,10 +52,10 @@ if TYPE_CHECKING:
|
|
|
53
52
|
|
|
54
53
|
from plotnine import watermark
|
|
55
54
|
from plotnine._mpl.gridspec import p9GridSpec
|
|
55
|
+
from plotnine.composition import Arrange
|
|
56
56
|
from plotnine.coords.coord import coord
|
|
57
57
|
from plotnine.facets.facet import facet
|
|
58
58
|
from plotnine.layer import layer
|
|
59
|
-
from plotnine.plot_composition import Compose
|
|
60
59
|
from plotnine.typing import DataLike
|
|
61
60
|
|
|
62
61
|
class PlotAddable(Protocol):
|
|
@@ -230,18 +229,10 @@ class ggplot:
|
|
|
230
229
|
other.__radd__(self)
|
|
231
230
|
return self
|
|
232
231
|
|
|
233
|
-
@overload
|
|
234
|
-
def __add__(
|
|
235
|
-
self, rhs: PlotAddable | list[PlotAddable] | None
|
|
236
|
-
) -> ggplot: ...
|
|
237
|
-
|
|
238
|
-
@overload
|
|
239
|
-
def __add__(self, rhs: ggplot | Compose) -> Compose: ...
|
|
240
|
-
|
|
241
232
|
def __add__(
|
|
242
233
|
self,
|
|
243
|
-
rhs: PlotAddable | list[PlotAddable] | None
|
|
244
|
-
) -> ggplot
|
|
234
|
+
rhs: PlotAddable | list[PlotAddable] | None,
|
|
235
|
+
) -> ggplot:
|
|
245
236
|
"""
|
|
246
237
|
Add to ggplot
|
|
247
238
|
|
|
@@ -251,37 +242,32 @@ class ggplot:
|
|
|
251
242
|
Either an object that knows how to "radd"
|
|
252
243
|
itself to a ggplot, or a list of such objects.
|
|
253
244
|
"""
|
|
254
|
-
from .plot_composition import ADD, Compose
|
|
255
|
-
|
|
256
|
-
if isinstance(rhs, (ggplot, Compose)):
|
|
257
|
-
return ADD([self, rhs])
|
|
258
|
-
|
|
259
245
|
self = deepcopy(self)
|
|
260
246
|
return self.__iadd__(rhs)
|
|
261
247
|
|
|
262
|
-
def __or__(self, rhs: ggplot |
|
|
248
|
+
def __or__(self, rhs: ggplot | Arrange) -> Arrange:
|
|
263
249
|
"""
|
|
264
250
|
Compose 2 plots columnwise
|
|
265
251
|
"""
|
|
266
|
-
from .
|
|
252
|
+
from .composition import Beside
|
|
267
253
|
|
|
268
|
-
return
|
|
254
|
+
return Beside([self, rhs])
|
|
269
255
|
|
|
270
|
-
def __truediv__(self, rhs: ggplot |
|
|
256
|
+
def __truediv__(self, rhs: ggplot | Arrange) -> Arrange:
|
|
271
257
|
"""
|
|
272
258
|
Compose 2 plots rowwise
|
|
273
259
|
"""
|
|
274
|
-
from .
|
|
260
|
+
from .composition import Stack
|
|
275
261
|
|
|
276
|
-
return
|
|
262
|
+
return Stack([self, rhs])
|
|
277
263
|
|
|
278
|
-
def __sub__(self, rhs: ggplot |
|
|
264
|
+
def __sub__(self, rhs: ggplot | Arrange) -> Arrange:
|
|
279
265
|
"""
|
|
280
266
|
Compose 2 plots columnwise
|
|
281
267
|
"""
|
|
282
|
-
from .
|
|
268
|
+
from .composition import Beside
|
|
283
269
|
|
|
284
|
-
return
|
|
270
|
+
return Beside([self, rhs])
|
|
285
271
|
|
|
286
272
|
def __rrshift__(self, other: DataLike) -> ggplot:
|
|
287
273
|
"""
|
plotnine/scales/scale_manual.py
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
|
+
from collections.abc import Mapping
|
|
3
4
|
from dataclasses import KW_ONLY, InitVar, dataclass
|
|
4
5
|
from typing import Any, Sequence
|
|
5
6
|
from warnings import warn
|
|
@@ -29,6 +30,7 @@ class _scale_manual(scale_discrete):
|
|
|
29
30
|
isinstance(self.breaks, Iterable)
|
|
30
31
|
and isinstance(self.breaks, Sized)
|
|
31
32
|
and len(self.breaks) == len(values)
|
|
33
|
+
and not isinstance(values, Mapping)
|
|
32
34
|
):
|
|
33
35
|
values = dict(zip(self.breaks, values))
|
|
34
36
|
|
plotnine/stats/stat_bin.py
CHANGED
|
@@ -53,6 +53,10 @@ class stat_bin(stat):
|
|
|
53
53
|
pad : bool, default=False
|
|
54
54
|
If `True`{.py}, adds empty bins at either side of x.
|
|
55
55
|
This ensures that frequency polygons touch 0.
|
|
56
|
+
|
|
57
|
+
See Also
|
|
58
|
+
--------
|
|
59
|
+
plotnine.histogram : The default `geom` for this `stat`.
|
|
56
60
|
"""
|
|
57
61
|
|
|
58
62
|
_aesthetics_doc = """
|
plotnine/stats/stat_bin_2d.py
CHANGED
|
@@ -35,6 +35,10 @@ class stat_bin_2d(stat):
|
|
|
35
35
|
the stories in your data.
|
|
36
36
|
drop : bool, default=False
|
|
37
37
|
If `True`{.py}, removes all cells with zero counts.
|
|
38
|
+
|
|
39
|
+
See Also
|
|
40
|
+
--------
|
|
41
|
+
plotnine.geom_rect : The default `geom` for this `stat`.
|
|
38
42
|
"""
|
|
39
43
|
|
|
40
44
|
_aesthetics_doc = """
|
plotnine/stats/stat_bindot.py
CHANGED
plotnine/stats/stat_boxplot.py
CHANGED
plotnine/stats/stat_count.py
CHANGED
plotnine/stats/stat_density.py
CHANGED
plotnine/stats/stat_ecdf.py
CHANGED
plotnine/stats/stat_ellipse.py
CHANGED
|
@@ -37,6 +37,10 @@ class stat_ellipse(stat):
|
|
|
37
37
|
The confidence level at which to draw the ellipse.
|
|
38
38
|
segments : int, default=51
|
|
39
39
|
Number of segments to be used in drawing the ellipse.
|
|
40
|
+
|
|
41
|
+
See Also
|
|
42
|
+
--------
|
|
43
|
+
plotnine.geom_path : The default `geom` for this `stat`.
|
|
40
44
|
"""
|
|
41
45
|
|
|
42
46
|
REQUIRED_AES = {"x", "y"}
|
plotnine/stats/stat_function.py
CHANGED
|
@@ -37,6 +37,10 @@ class stat_function(stat):
|
|
|
37
37
|
then the `xlim` must be provided.
|
|
38
38
|
args : Optional[tuple[Any] | dict[str, Any]], default=None
|
|
39
39
|
Arguments to pass to `fun`.
|
|
40
|
+
|
|
41
|
+
See Also
|
|
42
|
+
--------
|
|
43
|
+
plotnine.geom_path : The default `geom` for this `stat`.
|
|
40
44
|
"""
|
|
41
45
|
|
|
42
46
|
_aesthetics_doc = """
|
plotnine/stats/stat_hull.py
CHANGED
|
@@ -26,6 +26,10 @@ class stat_hull(stat):
|
|
|
26
26
|
Raised when Qhull encounters an error condition,
|
|
27
27
|
such as geometrical degeneracy when options to resolve are
|
|
28
28
|
not enabled.
|
|
29
|
+
|
|
30
|
+
See Also
|
|
31
|
+
--------
|
|
32
|
+
plotnine.geom_path : The default `geom` for this `stat`.
|
|
29
33
|
"""
|
|
30
34
|
|
|
31
35
|
_aesthetics_doc = """
|
plotnine/stats/stat_identity.py
CHANGED
plotnine/stats/stat_qq.py
CHANGED
plotnine/stats/stat_qq_line.py
CHANGED
plotnine/stats/stat_quantile.py
CHANGED
plotnine/stats/stat_sina.py
CHANGED
plotnine/stats/stat_smooth.py
CHANGED