plotnine 0.15.0.dev3__py3-none-any.whl → 0.15.2__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.
Files changed (139) hide show
  1. plotnine/__init__.py +2 -0
  2. plotnine/_mpl/layout_manager/_engine.py +1 -1
  3. plotnine/_mpl/layout_manager/_layout_items.py +126 -41
  4. plotnine/_mpl/layout_manager/_layout_tree.py +712 -314
  5. plotnine/_mpl/layout_manager/_spaces.py +305 -101
  6. plotnine/_mpl/patches.py +70 -34
  7. plotnine/_mpl/text.py +144 -63
  8. plotnine/_mpl/utils.py +1 -1
  9. plotnine/_utils/__init__.py +50 -107
  10. plotnine/_utils/context.py +78 -2
  11. plotnine/_utils/ipython.py +35 -51
  12. plotnine/_utils/quarto.py +26 -0
  13. plotnine/_utils/yippie.py +115 -0
  14. plotnine/composition/__init__.py +11 -0
  15. plotnine/composition/_beside.py +55 -0
  16. plotnine/composition/_compose.py +471 -0
  17. plotnine/composition/_plot_spacer.py +60 -0
  18. plotnine/composition/_stack.py +55 -0
  19. plotnine/coords/coord.py +3 -3
  20. plotnine/data/__init__.py +31 -0
  21. plotnine/data/anscombe-quartet.csv +45 -0
  22. plotnine/doctools.py +4 -4
  23. plotnine/facets/facet.py +4 -4
  24. plotnine/facets/strips.py +17 -28
  25. plotnine/geoms/annotate.py +13 -13
  26. plotnine/geoms/annotation_logticks.py +7 -8
  27. plotnine/geoms/annotation_stripes.py +6 -6
  28. plotnine/geoms/geom.py +60 -27
  29. plotnine/geoms/geom_abline.py +3 -2
  30. plotnine/geoms/geom_area.py +2 -2
  31. plotnine/geoms/geom_bar.py +1 -0
  32. plotnine/geoms/geom_bin_2d.py +6 -2
  33. plotnine/geoms/geom_blank.py +0 -3
  34. plotnine/geoms/geom_boxplot.py +8 -4
  35. plotnine/geoms/geom_col.py +2 -2
  36. plotnine/geoms/geom_count.py +6 -2
  37. plotnine/geoms/geom_crossbar.py +3 -3
  38. plotnine/geoms/geom_density_2d.py +6 -2
  39. plotnine/geoms/geom_dotplot.py +2 -2
  40. plotnine/geoms/geom_errorbar.py +2 -2
  41. plotnine/geoms/geom_errorbarh.py +2 -2
  42. plotnine/geoms/geom_histogram.py +1 -1
  43. plotnine/geoms/geom_hline.py +3 -2
  44. plotnine/geoms/geom_linerange.py +2 -2
  45. plotnine/geoms/geom_map.py +5 -5
  46. plotnine/geoms/geom_path.py +11 -12
  47. plotnine/geoms/geom_point.py +4 -5
  48. plotnine/geoms/geom_pointdensity.py +4 -0
  49. plotnine/geoms/geom_pointrange.py +3 -5
  50. plotnine/geoms/geom_polygon.py +2 -3
  51. plotnine/geoms/geom_qq.py +4 -0
  52. plotnine/geoms/geom_qq_line.py +4 -0
  53. plotnine/geoms/geom_quantile.py +4 -0
  54. plotnine/geoms/geom_raster.py +4 -5
  55. plotnine/geoms/geom_rect.py +3 -4
  56. plotnine/geoms/geom_ribbon.py +7 -7
  57. plotnine/geoms/geom_rug.py +1 -1
  58. plotnine/geoms/geom_segment.py +2 -2
  59. plotnine/geoms/geom_sina.py +3 -3
  60. plotnine/geoms/geom_smooth.py +7 -3
  61. plotnine/geoms/geom_step.py +2 -2
  62. plotnine/geoms/geom_text.py +2 -3
  63. plotnine/geoms/geom_violin.py +8 -5
  64. plotnine/geoms/geom_vline.py +3 -2
  65. plotnine/ggplot.py +64 -85
  66. plotnine/guides/guide.py +7 -10
  67. plotnine/guides/guide_colorbar.py +3 -3
  68. plotnine/guides/guide_legend.py +3 -3
  69. plotnine/guides/guides.py +6 -6
  70. plotnine/helpers.py +49 -0
  71. plotnine/iapi.py +28 -5
  72. plotnine/labels.py +3 -3
  73. plotnine/layer.py +36 -19
  74. plotnine/mapping/_atomic.py +178 -0
  75. plotnine/mapping/_env.py +13 -2
  76. plotnine/mapping/_eval_environment.py +1 -1
  77. plotnine/mapping/aes.py +85 -49
  78. plotnine/scales/__init__.py +2 -0
  79. plotnine/scales/limits.py +7 -7
  80. plotnine/scales/scale.py +3 -3
  81. plotnine/scales/scale_color.py +82 -18
  82. plotnine/scales/scale_continuous.py +6 -4
  83. plotnine/scales/scale_datetime.py +28 -14
  84. plotnine/scales/scale_discrete.py +1 -1
  85. plotnine/scales/scale_identity.py +21 -2
  86. plotnine/scales/scale_manual.py +8 -2
  87. plotnine/scales/scale_xy.py +2 -2
  88. plotnine/stats/binning.py +4 -1
  89. plotnine/stats/smoothers.py +23 -36
  90. plotnine/stats/stat.py +20 -32
  91. plotnine/stats/stat_bin.py +6 -5
  92. plotnine/stats/stat_bin_2d.py +11 -9
  93. plotnine/stats/stat_bindot.py +13 -16
  94. plotnine/stats/stat_boxplot.py +6 -6
  95. plotnine/stats/stat_count.py +6 -9
  96. plotnine/stats/stat_density.py +7 -10
  97. plotnine/stats/stat_density_2d.py +12 -8
  98. plotnine/stats/stat_ecdf.py +7 -6
  99. plotnine/stats/stat_ellipse.py +9 -6
  100. plotnine/stats/stat_function.py +10 -8
  101. plotnine/stats/stat_hull.py +6 -3
  102. plotnine/stats/stat_identity.py +5 -2
  103. plotnine/stats/stat_pointdensity.py +5 -7
  104. plotnine/stats/stat_qq.py +46 -20
  105. plotnine/stats/stat_qq_line.py +16 -11
  106. plotnine/stats/stat_quantile.py +15 -9
  107. plotnine/stats/stat_sina.py +13 -15
  108. plotnine/stats/stat_smooth.py +8 -10
  109. plotnine/stats/stat_sum.py +5 -2
  110. plotnine/stats/stat_summary.py +7 -10
  111. plotnine/stats/stat_summary_bin.py +11 -14
  112. plotnine/stats/stat_unique.py +5 -2
  113. plotnine/stats/stat_ydensity.py +8 -11
  114. plotnine/themes/elements/__init__.py +2 -1
  115. plotnine/themes/elements/element_line.py +17 -9
  116. plotnine/themes/elements/margin.py +64 -1
  117. plotnine/themes/theme.py +9 -1
  118. plotnine/themes/theme_538.py +0 -1
  119. plotnine/themes/theme_bw.py +0 -1
  120. plotnine/themes/theme_dark.py +0 -1
  121. plotnine/themes/theme_gray.py +6 -5
  122. plotnine/themes/theme_light.py +1 -1
  123. plotnine/themes/theme_matplotlib.py +5 -5
  124. plotnine/themes/theme_seaborn.py +7 -4
  125. plotnine/themes/theme_void.py +9 -8
  126. plotnine/themes/theme_xkcd.py +0 -1
  127. plotnine/themes/themeable.py +109 -31
  128. plotnine/typing.py +17 -6
  129. plotnine/watermark.py +3 -3
  130. {plotnine-0.15.0.dev3.dist-info → plotnine-0.15.2.dist-info}/METADATA +13 -6
  131. plotnine-0.15.2.dist-info/RECORD +221 -0
  132. {plotnine-0.15.0.dev3.dist-info → plotnine-0.15.2.dist-info}/WHEEL +1 -1
  133. plotnine/plot_composition/__init__.py +0 -10
  134. plotnine/plot_composition/_compose.py +0 -436
  135. plotnine/plot_composition/_spacer.py +0 -32
  136. plotnine-0.15.0.dev3.dist-info/RECORD +0 -215
  137. /plotnine/{plot_composition → composition}/_plotspec.py +0 -0
  138. {plotnine-0.15.0.dev3.dist-info → plotnine-0.15.2.dist-info}/licenses/LICENSE +0 -0
  139. {plotnine-0.15.0.dev3.dist-info → plotnine-0.15.2.dist-info}/top_level.txt +0 -0
@@ -1,436 +0,0 @@
1
- from __future__ import annotations
2
-
3
- from copy import deepcopy
4
- from dataclasses import dataclass
5
- from io import BytesIO
6
- from typing import TYPE_CHECKING
7
-
8
- from .._utils.ipython import (
9
- get_display_function,
10
- get_ipython,
11
- )
12
- from ..options import get_option
13
- from ._plotspec import plotspec
14
-
15
- if TYPE_CHECKING:
16
- from pathlib import Path
17
- from typing import Generator, Iterator, Self
18
-
19
- from matplotlib.figure import Figure
20
-
21
- from plotnine._mpl.gridspec import p9GridSpec
22
- from plotnine._utils.ipython import FigureFormat
23
- from plotnine.ggplot import PlotAddable, ggplot
24
-
25
-
26
- class Compose:
27
- """
28
- Arrange two or more plots
29
-
30
- Parameters
31
- ----------
32
- operands:
33
- The objects to be put together (composed).
34
- """
35
-
36
- def __init__(self, operands: list[ggplot | Compose]):
37
- self.operands = operands
38
-
39
- # These are created in the _create_figure method
40
- self.figure: Figure
41
- self.plotspecs: list[plotspec]
42
- self.gridspec: p9GridSpec
43
-
44
- def __add__(self, rhs: ggplot | Compose) -> Compose:
45
- """
46
- Add rhs to the composition
47
-
48
- Parameters
49
- ----------
50
- rhs:
51
- What to add to the composition
52
- """
53
- return self.__class__([*self, rhs])
54
-
55
- def __sub__(self, rhs: ggplot | Compose) -> Compose:
56
- """
57
- Add the rhs besides the composition
58
-
59
- Parameters
60
- ----------
61
- rhs:
62
- What to place besides the composition
63
- """
64
- return self.__class__([self, rhs])
65
-
66
- def __and__(self, rhs: PlotAddable) -> Compose:
67
- """
68
- Add rhs to all plots in the composition
69
-
70
- Parameters
71
- ----------
72
- rhs:
73
- What to add.
74
- """
75
- self = deepcopy(self)
76
-
77
- def add_other(op: Compose):
78
- for item in op:
79
- if isinstance(item, Compose):
80
- add_other(item)
81
- else:
82
- item += rhs
83
-
84
- add_other(self)
85
- return self
86
-
87
- def __mul__(self, rhs: PlotAddable) -> Compose:
88
- """
89
- Add rhs to the outermost nesting level of the composition
90
-
91
- Parameters
92
- ----------
93
- rhs:
94
- What to add.
95
- """
96
- from plotnine import ggplot
97
-
98
- self = deepcopy(self)
99
-
100
- for item in self:
101
- if isinstance(item, ggplot):
102
- item += rhs
103
- return self
104
-
105
- def __len__(self) -> int:
106
- """
107
- Number of operand
108
- """
109
- return len(self.operands)
110
-
111
- def __iter__(self) -> Iterator[ggplot | Compose]:
112
- """
113
- Return an iterable of all the operands
114
- """
115
- return iter(self.operands)
116
-
117
- def _ipython_display_(self):
118
- """
119
- Display plot in the output of the cell
120
- """
121
- return self._display()
122
-
123
- @property
124
- def nrow(self) -> int:
125
- """
126
- Number of rows in the composition
127
- """
128
- return 0
129
-
130
- @property
131
- def ncol(self) -> int:
132
- """
133
- Number of cols in the composition
134
- """
135
- return 0
136
-
137
- @property
138
- def last_plot(self):
139
- """
140
- Last plot added to the composition
141
- """
142
- from plotnine import ggplot
143
-
144
- last_operand = self.operands[-1]
145
- if isinstance(last_operand, ggplot):
146
- return last_operand
147
- else:
148
- return last_operand.last_plot
149
-
150
- def __deepcopy__(self, memo):
151
- """
152
- Deep copy without copying the figure
153
- """
154
- cls = self.__class__
155
- result = cls.__new__(cls)
156
- memo[id(self)] = result
157
- old = self.__dict__
158
- new = result.__dict__
159
-
160
- shallow = {"figure", "gridsspec", "__copy"}
161
- for key, item in old.items():
162
- if key in shallow:
163
- new[key] = item
164
- memo[id(new[key])] = new[key]
165
- else:
166
- new[key] = deepcopy(item, memo)
167
-
168
- old["__copy"] = result
169
-
170
- return result
171
-
172
- def _to_retina(self):
173
- from plotnine import ggplot
174
-
175
- for item in self:
176
- if isinstance(item, ggplot):
177
- item.theme = item.theme.to_retina()
178
- else:
179
- item._to_retina()
180
-
181
- def _create_gridspec(self, figure, nest_into):
182
- """
183
- Create the gridspec for this composition
184
- """
185
- from plotnine._mpl.gridspec import p9GridSpec
186
-
187
- self.gridspec = p9GridSpec(
188
- self.nrow, self.ncol, figure, nest_into=nest_into
189
- )
190
-
191
- def _create_figure(self):
192
- import matplotlib.pyplot as plt
193
-
194
- from plotnine import ggplot
195
- from plotnine._mpl.gridspec import p9GridSpec
196
-
197
- def _make_plotspecs(
198
- cmp: Compose, parent_gridspec: p9GridSpec | None
199
- ) -> Generator[plotspec]:
200
- """
201
- Return the plot specification for each subplot in the composition
202
- """
203
- # This gridspec contains a composition group e.g.
204
- # (p2 | p3) of p1 | (p2 | p3)
205
- ss_or_none = parent_gridspec[0] if parent_gridspec else None
206
- cmp._create_gridspec(self.figure, ss_or_none)
207
-
208
- # Each subplot in the composition will contain one of:
209
- # 1. A plot
210
- # 2. A plot composition
211
- # 3. Nothing
212
- # Iterating over the gridspec yields the SubplotSpecs for each
213
- # "subplot" in the grid. The SubplotSpec is the handle that
214
- # allows us to set it up for a plot or to nest another gridspec
215
- # in it.
216
- for item, subplot_spec in zip(cmp, cmp.gridspec): # pyright: ignore[reportArgumentType]
217
- if isinstance(item, ggplot):
218
- yield plotspec(
219
- item,
220
- self.figure,
221
- cmp.gridspec,
222
- subplot_spec,
223
- p9GridSpec(1, 1, self.figure, nest_into=subplot_spec),
224
- )
225
- elif item:
226
- yield from _make_plotspecs(
227
- item,
228
- p9GridSpec(1, 1, self.figure, nest_into=subplot_spec),
229
- )
230
-
231
- self.figure = plt.figure()
232
- self.plotspecs = list(_make_plotspecs(self, None))
233
-
234
- def _display(self):
235
- """
236
- Display plot in the cells output
237
-
238
- This function is called for its side-effects.
239
-
240
- It draws the plot to an io buffer then uses ipython display
241
- methods to show the result.
242
- """
243
- ip = get_ipython()
244
- format: FigureFormat = get_option(
245
- "figure_format"
246
- ) or ip.config.InlineBackend.get("figure_format", "retina")
247
-
248
- if format == "retina":
249
- self = deepcopy(self)
250
- self._to_retina()
251
-
252
- buf = BytesIO()
253
- self.save(buf, "png" if format == "retina" else format)
254
- figure_size_px = self.last_plot.theme._figure_size_px
255
- display_func = get_display_function(format, figure_size_px)
256
- display_func(buf.getvalue())
257
-
258
- def draw(self, *, show: bool = False) -> Figure:
259
- """
260
- Render the composed plots
261
-
262
- Parameters
263
- ----------
264
- show :
265
- Whether to show the plot.
266
-
267
- Returns
268
- -------
269
- :
270
- Matplotlib figure
271
- """
272
- from .._mpl.layout_manager import PlotnineCompositionLayoutEngine
273
-
274
- with plot_composition_context(self, show):
275
- self._create_figure()
276
- figure = self.figure
277
-
278
- for ps in self.plotspecs:
279
- ps.plot.draw()
280
-
281
- self.figure.set_layout_engine(
282
- PlotnineCompositionLayoutEngine(self)
283
- )
284
- return figure
285
-
286
- def save(self, filename: str | Path | BytesIO, format: str | None = None):
287
- """
288
- Save a Compose object as an image file
289
-
290
- Parameters
291
- ----------
292
- filename :
293
- File name to write the plot to. If not specified, a name
294
- format :
295
- Image format to use, automatically extract from
296
- file name extension.
297
- """
298
- figure = self.draw()
299
- figure.savefig(filename, format=format)
300
-
301
-
302
- @dataclass
303
- class plot_composition_context:
304
- cmp: Compose
305
- show: bool
306
-
307
- def __post_init__(self):
308
- import matplotlib as mpl
309
-
310
- # The dpi is needed when the figure is created, either as
311
- # a parameter to plt.figure() or an rcParam.
312
- # https://github.com/matplotlib/matplotlib/issues/24644
313
- # When drawing the Composition, the dpi themeable is infective
314
- # because it sets the rcParam after this figure is created.
315
- rcParams = {"figure.dpi": self.cmp.last_plot.theme.getp("dpi")}
316
- self._rc_context = mpl.rc_context(rcParams)
317
-
318
- def __enter__(self) -> Self:
319
- """
320
- Enclose in matplolib & pandas environments
321
- """
322
- self._rc_context.__enter__()
323
- return self
324
-
325
- def __exit__(self, exc_type, exc_value, exc_traceback):
326
- import matplotlib.pyplot as plt
327
-
328
- if exc_type is None:
329
- if self.show:
330
- plt.show()
331
- else:
332
- plt.close(self.cmp.figure)
333
- else:
334
- # There is an exception, close any figure
335
- if hasattr(self.cmp, "figure"):
336
- plt.close(self.cmp.figure)
337
-
338
- self._rc_context.__exit__(exc_type, exc_value, exc_traceback)
339
-
340
-
341
- class OR(Compose):
342
- """
343
- Compose by adding a column
344
- """
345
-
346
- @property
347
- def nrow(self) -> int:
348
- return 1
349
-
350
- @property
351
- def ncol(self) -> int:
352
- return len(self)
353
-
354
- def __or__(self, rhs: ggplot | Compose) -> Compose:
355
- """
356
- Add rhs as a column
357
- """
358
- # This is an adjacent or i.e. (OR | rhs) so we collapse the
359
- # operands into a single operation
360
- return OR([*self, rhs])
361
-
362
- def __truediv__(self, rhs: ggplot | Compose) -> Compose:
363
- """
364
- Add rhs as a row
365
- """
366
- return DIV([self, rhs])
367
-
368
-
369
- class DIV(Compose):
370
- """
371
- Compose by adding a row
372
- """
373
-
374
- @property
375
- def nrow(self) -> int:
376
- return len(self)
377
-
378
- @property
379
- def ncol(self) -> int:
380
- return 1
381
-
382
- def __truediv__(self, rhs: ggplot | Compose) -> Compose:
383
- """
384
- Add rhs as a row
385
- """
386
- # This is an adjacent div i.e. (DIV | rhs) so we collapse the
387
- # operands into a single operation
388
- return DIV([*self, rhs])
389
-
390
- def __or__(self, rhs: ggplot | Compose) -> Compose:
391
- """
392
- Add rhs as a column
393
- """
394
- return OR([self, rhs])
395
-
396
-
397
- class ADD(Compose):
398
- """
399
- Compose by adding
400
- """
401
-
402
- @property
403
- def nrow(self) -> int:
404
- from plotnine.facets.facet_wrap import wrap_dims
405
-
406
- return wrap_dims(len(self))[0]
407
-
408
- @property
409
- def ncol(self) -> int:
410
- from plotnine.facets.facet_wrap import wrap_dims
411
-
412
- return wrap_dims(len(self))[1]
413
-
414
- def __add__(self, rhs: ggplot | Compose) -> Compose:
415
- """
416
- Add rhs to the Composed group
417
- """
418
- return ADD([*self, rhs])
419
-
420
- def __or__(self, rhs: ggplot | Compose) -> Compose:
421
- """
422
- Add rhs as a column
423
- """
424
- return OR([self, rhs])
425
-
426
- def __truediv__(self, rhs: ggplot | Compose) -> Compose:
427
- """
428
- Add rhs as a row
429
- """
430
- return DIV([self, rhs])
431
-
432
- def __sub__(self, rhs: ggplot | Compose) -> Compose:
433
- """
434
- Add rhs as a column
435
- """
436
- return OR([self, rhs])
@@ -1,32 +0,0 @@
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 spacer(ggplot):
9
- """
10
- An empty plot
11
- """
12
-
13
- def __init__(self):
14
- super().__init__()
15
- self.theme = theme_void()
16
-
17
- def __add__(self, rhs) -> spacer: # pyright: ignore[reportIncompatibleMethodOverride]
18
- """
19
- Add to spacer
20
-
21
- All added objects are no ops except the plot_background,
22
- i.e.:
23
-
24
- theme(plot_background=element_rect(fill="red"))
25
- """
26
- self = deepcopy(self)
27
- if isinstance(rhs, theme):
28
- fill = rhs.getp(("plot_background", "facecolor"))
29
- self.theme += theme(
30
- plot_background=element_rect(fill=fill),
31
- )
32
- return self
@@ -1,215 +0,0 @@
1
- plotnine/__init__.py,sha256=HrJhd65bnny1t-TawUgvApVj4p-gDZ0ftpr2NKZeW_s,10316
2
- plotnine/animation.py,sha256=izJZ4Gy0cBHEBc8ehofsWSWOzZW8UEroy1Uvw86Igb0,7521
3
- plotnine/doctools.py,sha256=OoPKtbFNkhQ6vKk8NfivC_xKPSvwBWvNo5-ZHS8tRAk,14540
4
- plotnine/exceptions.py,sha256=SgTxBHkV65HjGI3aFy2q1_lHP9HAdiuxVLN3U-PJWSQ,1616
5
- plotnine/ggplot.py,sha256=oMeAwsYDVhpsFV1VhxYes-0bgAPmlAE8py_eI92Xlbo,24822
6
- plotnine/iapi.py,sha256=GZfXYS6JKyc8J2DB-QuSdtG_WGjBeR2vZP6ERYPUlrg,8420
7
- plotnine/labels.py,sha256=Ja1F0ZN5YxNjaWiAckc-jniMqXdnZxHCsqK5uudpx1s,2827
8
- plotnine/layer.py,sha256=r46mX4Sh_M2sHSpLcnf9UL-zc4ANuXvK8HRCQeWcya4,16749
9
- plotnine/options.py,sha256=j3zXv4wc3J4nOI_TqJ5s_abuifodt_UN8MR8M4i8UVA,3108
10
- plotnine/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- plotnine/qplot.py,sha256=BSAb4u5I7PaPGofkAgx7brdCNTjMZvC_TDGHVUZ35xM,7384
12
- plotnine/typing.py,sha256=p99BI4XQPsESqK1lg8V2lYeHgqNSQVbCxsfP1PLWhUw,3801
13
- plotnine/watermark.py,sha256=_SLjhiQquB0Vd_b5t_7-mUCvrbiN86tUYbBqU76JcSM,1506
14
- plotnine/_mpl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
- plotnine/_mpl/gridspec.py,sha256=OvlXchYXam1c1n8iNPKu4fJr6rqmH7OWebhJX5qqOmY,7903
16
- plotnine/_mpl/offsetbox.py,sha256=E7810lS9W7Gexwz5mkSMz7PQXXHkYX-WHKlPHqapmTg,3216
17
- plotnine/_mpl/patches.py,sha256=DLIFn4BFqrv0FXtbtloNWE5kaJRq85Q_8vz21sMJxuU,2568
18
- plotnine/_mpl/text.py,sha256=0rkIi69Yd3qX9yg4f3wfaDY8tky1HZXkZFA0575Di_c,3822
19
- plotnine/_mpl/ticker.py,sha256=RY_7AdTggc7QBq9_t0KBJXg36oxKfB-Vtc9FzLnaGnQ,393
20
- plotnine/_mpl/transforms.py,sha256=DNaOlNq76xlT696sN8ot1bmYyp4mmrjXQHk3kTi4HIg,76
21
- plotnine/_mpl/utils.py,sha256=c9wkxxUEweDg6O0hdgZonNOFncwxkqFye8_bL7td7I4,4131
22
- plotnine/_mpl/layout_manager/__init__.py,sha256=IXpPF5Oycc45uFpK4MJ6kcQCe1u5VUfnHLNZGcnrJCg,157
23
- plotnine/_mpl/layout_manager/_engine.py,sha256=ESUvbLAlZApFbBi6w7gZA7S4guS0Rmrj-us-gzYP2ZM,2809
24
- plotnine/_mpl/layout_manager/_layout_items.py,sha256=QcO6tiDhDvhU10Y1eBP1qQ5fZhPGEsbwLYmIftxXzkU,27007
25
- plotnine/_mpl/layout_manager/_layout_tree.py,sha256=4B2WMhIYrbikG1P2K87KqB4PqbU40zxlOAiQwe6-FPU,19539
26
- plotnine/_mpl/layout_manager/_spaces.py,sha256=k4Pm6rJZUvOEgCAsKiSPszIsvEkARyU5vWBX38s_KkA,32389
27
- plotnine/_utils/__init__.py,sha256=9RVYfwi9NmDGGzprUlE40yv9tJhW_VDAZkUKTTuvN7g,32473
28
- plotnine/_utils/context.py,sha256=HPQy_uyNXdS0s9URD7ZePyuc5hFU2XrRBLDTqRDLJzY,1708
29
- plotnine/_utils/dev.py,sha256=0qgRbMhcd4dfuLuYxx0skocKAtfwHF02ntyILRBogbg,1629
30
- plotnine/_utils/ipython.py,sha256=5Obr73xJ-4dzJEdBrFA8z9TXuxY7pIjKmzdTzWwnxNk,1884
31
- plotnine/_utils/quarto.py,sha256=bwbU3ork8wuUIW5VDJ73J_DbWWzpYWpAd76cHMzCRao,890
32
- plotnine/_utils/registry.py,sha256=HoiB2NnbEHufXjYnVJyrJKflk2RwKtTYk2L3n7tH4XA,3321
33
- plotnine/coords/__init__.py,sha256=inM-9JwSPvYLlOy6opye0YV2EGWsI4708wGKdHvQvVM,301
34
- plotnine/coords/coord.py,sha256=czFYR1qTKA-BcIyaL9l3pfzkIYM2pKwYAiTPbJtvSWQ,6880
35
- plotnine/coords/coord_cartesian.py,sha256=vGeSFe9UyycUkbjdjoPNSQJwnnU7fEmsk0nl_oBvzxY,3038
36
- plotnine/coords/coord_fixed.py,sha256=C9aIy28GQHE4XJQ3I1LhnHviUmhBia7dk64eBVNftLw,1763
37
- plotnine/coords/coord_flip.py,sha256=lskU4t72pMmtWL16slw3CV8bLPfTNONCmO_A1d0g5Rs,2891
38
- plotnine/coords/coord_trans.py,sha256=g6Scq9q_78bHBV6McHMQfFM4KPBVcz9bjpnNx7eMyz0,4750
39
- plotnine/data/__init__.py,sha256=roWstfVMSE7ThDsySeSQeopO7vOvo5K7o4nYyACRY5w,21316
40
- plotnine/data/diamonds.csv,sha256=lXRzCwOrokHYmcSpdRHFBhsZNY-riVEHdPtsJBaDRcQ,2772143
41
- plotnine/data/economics.csv,sha256=cWSbwFV6yqb7jYiKrwSCY-rz43icVHwQ_7fVXGksQeM,21860
42
- plotnine/data/economics_long.csv,sha256=ukh3n2MqY_rPEeNYy1PgryqJZfeS2AEKjSddnVJ0rdg,123339
43
- plotnine/data/faithful.csv,sha256=Xfz0Idy0fV62rkE7nRnO6cRn0NhRrWaWy4ovnGEdZ60,2470
44
- plotnine/data/faithfuld.csv,sha256=U2LleBDYmogQb_kDeil2v__YHUCubh8bgzFjyrOdIg4,298297
45
- plotnine/data/huron.csv,sha256=Sl2-tTPUj4rNEgm8qfF3UIquLAEjQaWShYgv8_gDYLk,1678
46
- plotnine/data/luv_colours.csv,sha256=L-c3aEHMJPZNcdDKqqU0b90W5FM4UtbEe-Np29LOKRQ,39004
47
- plotnine/data/meat.csv,sha256=tYfB51iuQ9h_6G-sDvxz2kCq6vQEbro3D3D87VVFZKU,46284
48
- plotnine/data/midwest.csv,sha256=FOhp7_w4R-gHqCZJlM5c59-RNbiV07WaIt881IKPt0A,98022
49
- plotnine/data/mpg.csv,sha256=FpX7FxpCJOxfkCZS9ghMRr1Sisv1Anj4O6gQTON0Mzw,16046
50
- plotnine/data/msleep.csv,sha256=Cm5ArhLjOFXbU5Ubo3slSyZgv36TCjMECQY9L9dY2GM,6773
51
- plotnine/data/mtcars.csv,sha256=CnukZ_Qy9KxNmHb_RBhBj4J5WefTIWNMBmr-PQqxkaQ,1787
52
- plotnine/data/pageviews.csv,sha256=Ydz7c4NO6AqLqJOxR2_9y2QRFtRV0q2xvSUby6siwTk,13559
53
- plotnine/data/penguins.csv,sha256=GGendqgzed9CGfInux7_uWfaEq2xNzISfIyNEgQ0wps,15203
54
- plotnine/data/presidential.csv,sha256=jkUSy3wUSYpo1Vdj90U8ivSE1TLL_ztxvtqIVa7C1Wc,511
55
- plotnine/data/seals.csv,sha256=VEuSEBLz3Fj14eBdM6hp6M6GpH2lqN5ekT_d2Mk1rK0,57035
56
- plotnine/data/txhousing.csv,sha256=RdHoH5W9bud_DzsefIc8yNOFaxMl6IDDKMiP68aoIoY,523993
57
- plotnine/facets/__init__.py,sha256=9P2MBA8MF1cRpk7YRQUcYN2UY7kZ9qrZc_0Qm9SRguk,393
58
- plotnine/facets/facet.py,sha256=myAJ4llRpRFDV2ZZKT7AW4Bn-CRxy4Cvke40HtCK4Mo,18185
59
- plotnine/facets/facet_grid.py,sha256=sK50Syzt2sy5aE3hObBC4TdQwCwyY-EtDUK2_B6aDnM,11755
60
- plotnine/facets/facet_null.py,sha256=J--RdOvFP7AE0jK79-LNRksvCJExQTpS-tU5i0pGqs8,749
61
- plotnine/facets/facet_wrap.py,sha256=NOoNdkaSb1y_ho6UygGkDih7zlQYXcEgJYK0Lqu6e98,8805
62
- plotnine/facets/labelling.py,sha256=JEuwERTK0IfmxTWHbl2nsGgxZ6xi0n2TTWT4_OSfQcQ,8833
63
- plotnine/facets/layout.py,sha256=TIkMChA0wJWLKN31PH0czS6CN4pw3o--PF49LakJ2h4,8967
64
- plotnine/facets/strips.py,sha256=7K_SLVLhlb2-E-JNCZWOamFbC-yKLJ0yuqbwNoElLXk,6154
65
- plotnine/geoms/__init__.py,sha256=HEfhNmmNH4xm4rpXnFRXY4eLkJha3XPM72IIwVjv5Lc,2697
66
- plotnine/geoms/annotate.py,sha256=5sCHIMR_GjM2ujNY73i4iBczOkGi-vq1Nr1Yc3cBgZo,4022
67
- plotnine/geoms/annotation_logticks.py,sha256=2_ILqE2cgX2acFoGZPDnbTJ0V7b3-ALVjno71FQuuxE,8953
68
- plotnine/geoms/annotation_stripes.py,sha256=6LpfWzyAS6xpzTfIPorhZaVBL9j6jiSIoyVWViJVkbA,6037
69
- plotnine/geoms/geom.py,sha256=kn3ekM968Xx3nmRRQxI1sGcEl44LBv8E3m4nUC4njMI,16549
70
- plotnine/geoms/geom_abline.py,sha256=Q9FNVIQMLr5Xq-fsGD8H17D6f8uOdOhGoDoMI-GTqU4,3178
71
- plotnine/geoms/geom_area.py,sha256=wvQ4nNvhJNN3nfn6Bv1gCARC6IWTjOjOfHPfSmg6Sxc,818
72
- plotnine/geoms/geom_bar.py,sha256=SnqS4hPTfqXzdPh1U-kNuBg0LNX9_tQC9OKhIlB7cy0,1732
73
- plotnine/geoms/geom_bin_2d.py,sha256=b2fAQVywug-ey3KtqeOoYQ2RNRSRE_fa4s7M41W-_FE,574
74
- plotnine/geoms/geom_blank.py,sha256=au-WTJRdOcSfq_qQ6TugrSzjAweZfTElH9l8yYrmZ0I,821
75
- plotnine/geoms/geom_boxplot.py,sha256=m9vrF4i4Cw_NGxZ9WLVPsDxbqQ3jJFtnJ-UrtE3teCI,9775
76
- plotnine/geoms/geom_col.py,sha256=sGZZzkXgwlgI2D-M1UE1QAWsWZqtP1z8R0HjrnW9hkY,1187
77
- plotnine/geoms/geom_count.py,sha256=IRIlQqwt0kIHf9swYZbFqd5RSQCYRyFKm5hp1C9xHB4,511
78
- plotnine/geoms/geom_crossbar.py,sha256=-TN5UohaMNYPjYavbvW9feyW_fR-CBxFqyvSSrPIYZQ,6237
79
- plotnine/geoms/geom_density.py,sha256=UwUkJxI79L3z19tmoSI6ZYs418XTbRznd-Abzrec3VY,526
80
- plotnine/geoms/geom_density_2d.py,sha256=V37QYpdZpZvYxishlN1UBmyyRC3U2eOqR-gaIPxQqS4,400
81
- plotnine/geoms/geom_dotplot.py,sha256=dcQwuUldoibIHc7DD01Tx_bD6pgqm8lz9TBQ3HbloRM,8671
82
- plotnine/geoms/geom_errorbar.py,sha256=ZFZf9fzd9FLPAuCHZ-H_l-PMRM4CFFIkVB_xTY_EoiQ,2192
83
- plotnine/geoms/geom_errorbarh.py,sha256=FMl_PdppiBXUj1ChhtOPWsOQHKg8HxyYUCjuL0HxQyA,2206
84
- plotnine/geoms/geom_freqpoly.py,sha256=lsr1dwZyR6gUbzl5SNJ5yYklsWGjkqYYAe3Mb8AWynk,339
85
- plotnine/geoms/geom_histogram.py,sha256=JnqHJb7HISQKnH2XwW6JOB8g462yGH1nMMYxbtwvqtY,329
86
- plotnine/geoms/geom_hline.py,sha256=0LkUi68q5IUoaQxqnWAxKpFiP3sPr2QsH6uMQpC8k-k,2471
87
- plotnine/geoms/geom_jitter.py,sha256=mJCLt2SoZN_tx_3XS8oF5JojtL2m5HO1bEqdN-JEPUg,2291
88
- plotnine/geoms/geom_label.py,sha256=lPxmDlS6VgEHqD3Ac1Q-Zxs75JcnduoXjJ_D1AzzWew,2835
89
- plotnine/geoms/geom_line.py,sha256=IzKVPwF_Oe3uwRpuh5Xu9LFvz0XcKqCL4pN03iGHBdk,522
90
- plotnine/geoms/geom_linerange.py,sha256=xfysK1fJcLm-_8odQYmzzEhlccO-d7NHfMtVBr1bbGQ,1275
91
- plotnine/geoms/geom_map.py,sha256=Py7iNoFapwftCSK7UMwkTOeTd3_8vWStVuB12tInjOo,9600
92
- plotnine/geoms/geom_path.py,sha256=OejXwgW5s9kZpGQ2sdux8lcLVI_Ncwf3Q1QUCLo8xTw,17127
93
- plotnine/geoms/geom_point.py,sha256=Y7eDpRoCR3EKDujsVPMG_EK9o1-wTfrgpuRJ0cjCTLs,4611
94
- plotnine/geoms/geom_pointdensity.py,sha256=TKaxAUPwdrVMw0MVYe14apBsRfW_5_zXFLSlOS60Zlw,372
95
- plotnine/geoms/geom_pointrange.py,sha256=CvuMVHiYcv6giBb3b2A5KkAykLHMlM_CaQXBmOlCHGw,2624
96
- plotnine/geoms/geom_polygon.py,sha256=ry_aQzgpog6ibe-13JQltltE7U4NFLElWqc9BtevpGc,4160
97
- plotnine/geoms/geom_qq.py,sha256=uimpCvBrJhMscglVzI7cUAnAC3ZRs7nqXyGilq1ipkw,294
98
- plotnine/geoms/geom_qq_line.py,sha256=i0L9if-JxTr2heYUpIqV_cZ4qMiB7Om6EOurR76nFhg,337
99
- plotnine/geoms/geom_quantile.py,sha256=rcYmyO062IFASBoYZEE31KtHKSVkWNwF-upbBp9AgAU,806
100
- plotnine/geoms/geom_raster.py,sha256=AyzNbJanvS0tyx1nXZ7utZvmJjRvYEsMT8AuyiCAup8,6269
101
- plotnine/geoms/geom_rect.py,sha256=-IWtp20iz1lN2zWlT2O8_2rp_ZoFG2AiSAVn619Vnek,3725
102
- plotnine/geoms/geom_ribbon.py,sha256=2L7-ElZRud7AYroKlSnQQVlEP2fTtzVlOpxnmX_fFjs,5752
103
- plotnine/geoms/geom_rug.py,sha256=TMOvKmcOq_Z2mpRy4YrlsjjNt5A2Oy58F55xO78IYtE,3511
104
- plotnine/geoms/geom_segment.py,sha256=KU6jCaU2a8X7OI9WHQevLgQQBqmBjYnI3j4jV9fOqhU,3045
105
- plotnine/geoms/geom_sina.py,sha256=oyCiBCdsWjrSNaS2jOpu0Ng8nEl_peaCT-EuHE9jG34,912
106
- plotnine/geoms/geom_smooth.py,sha256=LE8H6kMlQdLiwLgMfIZYWh8TCFyMbYM7nXwlV2kLzT8,3540
107
- plotnine/geoms/geom_spoke.py,sha256=s-kug0H-YGhyjso9W43XvzJf9-g6inh8zzuSFeXzSaU,977
108
- plotnine/geoms/geom_step.py,sha256=oKi2lWG7M2lGpF4G0yC7_5qn5tb-gc3o4H-pu3_wS64,2364
109
- plotnine/geoms/geom_text.py,sha256=CqmjsOJsAsIsTm6SkVJt0gms363AXpLN_JCTpuK6Krw,11908
110
- plotnine/geoms/geom_tile.py,sha256=3x9BSxaSr-ys6N5R2wY8B9fNiyV9vMdoXbjIDqHy_ng,1431
111
- plotnine/geoms/geom_violin.py,sha256=VqwD2GiCRUCq5tLQbQVcLiXSaxWO-OMe9_K9GnWqdrs,7147
112
- plotnine/geoms/geom_vline.py,sha256=qKUd4IosH1VrwHbqNbs29kZyIW5lQRa_LZLRcLbPg38,3377
113
- plotnine/guides/__init__.py,sha256=ulI-mDhtq3jAQEAqPv8clrn3UHGFOu3xRuO7jXlq-LY,201
114
- plotnine/guides/guide.py,sha256=L1O26atzSjiQR-YW9w3XEcH0BDFiqthdY6wA6DAOapo,8229
115
- plotnine/guides/guide_axis.py,sha256=zG_5Ot1kTuHOeuQspL5V1A1-7c7X8cNeMDoF01Ghh2w,296
116
- plotnine/guides/guide_colorbar.py,sha256=zHM6QRrzACC2l1Vq6p04Cu0QAGuTBfp3AhPyyMbYbgc,16290
117
- plotnine/guides/guide_legend.py,sha256=0CSyRxlHu0RSJjnMWvnStnq-EtjgdmHv54QgPWC3ufE,14236
118
- plotnine/guides/guides.py,sha256=UI3AhTOQCsXur_L-Jr3VwAQcX4dBeZMohSbA2wg1YeA,15478
119
- plotnine/mapping/__init__.py,sha256=DLu9E0kwwuHxzTUenoVjCNTTdkWMwIDtkExLleBq1MI,205
120
- plotnine/mapping/_env.py,sha256=ZzcSv54PLOD8b8Ny2h6xteGoO8bJdbj9dM6Mlg5h0V8,6094
121
- plotnine/mapping/_eval_environment.py,sha256=ZPzIh61maJl79VQMj6ZsBGcaVV870SIARqI-Z4eNeXA,2463
122
- plotnine/mapping/aes.py,sha256=fMwZJ7MhAcUqhUIb3ekmI_RVpKotJxCl66ale4P3B10,15797
123
- plotnine/mapping/evaluation.py,sha256=kblTxVv3M4xIGnHyReUU0RtmmIN77Or2JBcci0nGGfE,5913
124
- plotnine/plot_composition/__init__.py,sha256=ZJYpfVF158cQZ1zREXy6wHNJ4FbSmqWxIkHWZwX3QT8,148
125
- plotnine/plot_composition/_compose.py,sha256=uQfXxDbEayqyjX6yMOCJiePqAK7I2OU5YnBhphkYFY4,11477
126
- plotnine/plot_composition/_plotspec.py,sha256=0F7q7PjDMDqcallpnBdX3N2iSRjdBTyjSvMFf83uvPU,1015
127
- plotnine/plot_composition/_spacer.py,sha256=vaC4F5tHhvL7T7Ns9zxUbytqwB6MLNhm5jtiKG0vAiU,798
128
- plotnine/positions/__init__.py,sha256=DQZE6duMUNRQifpa6SBrOKxZpGDk4NqQSGZLr9Yc9GI,595
129
- plotnine/positions/position.py,sha256=BRD_dUh9dhdSP4SQfl8_u_VpaY_s3A2zuznwOn5M_80,8325
130
- plotnine/positions/position_dodge.py,sha256=6PbAhWDfNK7NK6FZZOcfr4mdmVOUV9VLH8xD0dbQFEU,3941
131
- plotnine/positions/position_dodge2.py,sha256=QI-oTIiYFOARozbBRuGQ1RHnZI_DKbCR2pJbuXlZvpQ,5661
132
- plotnine/positions/position_fill.py,sha256=DvBm_6Oh2X3tSl67gP-iFoBmbYHy_WfZotHSrY4k0Rg,160
133
- plotnine/positions/position_identity.py,sha256=9GE4WpuISLcGWTsgGqF9MARKhxdVySk5xeHACtyfJIk,203
134
- plotnine/positions/position_jitter.py,sha256=p5s21ry-k7dK2G_jtWFghocbA-1XS73ljMiuJRIM4WE,2226
135
- plotnine/positions/position_jitterdodge.py,sha256=D8J-9LfQgWaU6x5cZxkqze5NbKiHaDysUn-ftsxV7sU,3315
136
- plotnine/positions/position_nudge.py,sha256=IKzQsnZ5xpUzi_yP2GFBl249jICQv4j3dGpEcwx88UY,949
137
- plotnine/positions/position_stack.py,sha256=faomJVM-YsrxDVAmKC_9G3t6dNg3pgmaIcEJo39Xrb4,4027
138
- plotnine/scales/__init__.py,sha256=xjDUpVWBJ-JftSJkLTP_nB2Zs5BptaduOjkhBv3Qs9Q,5470
139
- plotnine/scales/_expand.py,sha256=ynlg_6s3NDTIe8dcP1C6XpiaIva0sin9fILFLywS04Y,1551
140
- plotnine/scales/_runtime_typing.py,sha256=Ror99gzX0pe25F3trm2TZOyQhNhIZiS8IfbYpdRh-aU,1311
141
- plotnine/scales/limits.py,sha256=db4r3Mvb35USO3w-fq12Rs5T3oOTylH5n8Ie8LFl6Wk,5619
142
- plotnine/scales/range.py,sha256=xBlFdAhthH1zKIJZDdkEyAA2kMZtyDorDFHKBMHKyAQ,1379
143
- plotnine/scales/scale.py,sha256=MpHUbFuO_6CdnfPS2IZ7eVMmZWY7wLvAWVSaSb6lSsw,8075
144
- plotnine/scales/scale_alpha.py,sha256=lYVZeaCC2pk-0-BoXnOeP0RdIbHYk6qo3DRClJrxTKo,2350
145
- plotnine/scales/scale_color.py,sha256=TKDpMBRsDM5--RbMRHGwMAoVFr7hF9Jtz2yKhrG9stQ,13347
146
- plotnine/scales/scale_continuous.py,sha256=gpTpZdPtQrTx1AiJAmBwW-AzvBiNbv9bUDzZmvdO0tA,16392
147
- plotnine/scales/scale_datetime.py,sha256=bY8fhXGj7fLOq783nuhoLJCybo_QnOo0L5XZFt5vSHc,3167
148
- plotnine/scales/scale_discrete.py,sha256=AXxoa3_0_zoPRm46GflBU8pbY9B26bSmxSv5hDv9mos,9392
149
- plotnine/scales/scale_identity.py,sha256=V_gj80VWTVTk-BZq_tWJqE7j_XOswY64hg_cRSMd3C4,1987
150
- plotnine/scales/scale_linetype.py,sha256=pwLTmglN6d4bnChbuBi6HWbDP_nsE4viXD8CK6XKBPw,1373
151
- plotnine/scales/scale_manual.py,sha256=pmrTN_yNqOa_1o63LqKZnAPIhNoVkn00p2nAXdJgOlo,4429
152
- plotnine/scales/scale_shape.py,sha256=I0JdYDreCbznQilaTi6m27F91N5daCj9D2ZPuP2Szls,2081
153
- plotnine/scales/scale_size.py,sha256=04nUQzKB_qpuQrcg8C7jYmLDYtdnlg6PkY7SivP5OlY,3273
154
- plotnine/scales/scale_stroke.py,sha256=7LKAg6-Q3VTuw78N2XEjFFzBa8yY5NVnfBSoJGsBS5o,1711
155
- plotnine/scales/scale_xy.py,sha256=uWWYxWr0fWIlqJJIRdwG44pMfmKPwKLjclvrE95ZUrk,10060
156
- plotnine/scales/scales.py,sha256=rmHFm7roKEeZhKs81gjhCNMyNpvXmQOqxqvEH8GCwOs,10113
157
- plotnine/stats/__init__.py,sha256=IZVXnHYmdpdev9NzxA-Nw9dZnuq1pudZNWLbYbvfWSg,1386
158
- plotnine/stats/binning.py,sha256=df0Qt4ZSi9rNqivAVZrgKyiQHh_CK9qAFabqjXn5uqs,9453
159
- plotnine/stats/density.py,sha256=TQihwduejW5I5oZ8GdWI_U_n-5N49SfMShm3OtlDhW8,6372
160
- plotnine/stats/distributions.py,sha256=pskpWUFcyrLR6AYeZAciRH0Cb267ME3G2mvm79xsgMc,1178
161
- plotnine/stats/smoothers.py,sha256=yS-DOcNwXapyL7A_eh-yL2dlQEbvF0TtmjIBhpqkLq0,17863
162
- plotnine/stats/stat.py,sha256=HIVzEsqPG_7cmdlocuq53MArD5kPxrNkXM5Bz6ws3_o,11741
163
- plotnine/stats/stat_bin.py,sha256=lpSL22f78mCMoVojuao_-EVNa4bTqfS5TRtZncPoRII,4590
164
- plotnine/stats/stat_bin_2d.py,sha256=cT8YZ8LnY4ns0kz2kgANU_3-lh_1T-uadhFYNa_JIzY,5252
165
- plotnine/stats/stat_bindot.py,sha256=EZb7IuXN1HaF6Su70VG-rKmQG9-Yc7xst8knFydIAXM,10290
166
- plotnine/stats/stat_boxplot.py,sha256=bwvrDs4vusYztn1Ibc-PTa_Rqn0P9JdILSBgmPotU_M,6018
167
- plotnine/stats/stat_count.py,sha256=JBCSHqHy5yA485pKVCqMCHRmJS5FOKinO4i6sKDnq7A,1993
168
- plotnine/stats/stat_density.py,sha256=XlRYG89iXWGBOn_0YpCbmycGlxumgRTukA5A1DtWwwY,10400
169
- plotnine/stats/stat_density_2d.py,sha256=KD2sllEeStiMCI2SljI_XW-zVksQGj3kmKYqHTNjgC8,5558
170
- plotnine/stats/stat_ecdf.py,sha256=Ck5a9QBU3p1KuBS3Ma8JrXZr9a-tB1Z-53vhLirRIZw,1631
171
- plotnine/stats/stat_ellipse.py,sha256=6fC6__kGLdrHVeM4KXnuDQcSnvSwhFy-n5EpStZS3J0,7502
172
- plotnine/stats/stat_function.py,sha256=fGpgxRJXtU0GB_uB4UkrbxGYDucVBaOdoxESzGF3-pc,3156
173
- plotnine/stats/stat_hull.py,sha256=tfoFAnTZG6NME3_22ltMPVcdmobrexTwNqhtZHc7tgk,1475
174
- plotnine/stats/stat_identity.py,sha256=h9SV8TZ4bkOF0uaNXMidAKdMrqPSDugm1Z2fyKzU3n4,384
175
- plotnine/stats/stat_pointdensity.py,sha256=Lnf6vsqVEs9FxgnB-zk_LnzLfMBvH8MV4KQWNj3i0Uo,2177
176
- plotnine/stats/stat_qq.py,sha256=aDjfUHqyBFFErBAJ5E9LJZU8SVBJbCnXSUl2-AJ3DQg,2876
177
- plotnine/stats/stat_qq_line.py,sha256=_J6XvNXQwChhwl4dDgKl1czLnZhm04jXp9xwylsIwsU,3305
178
- plotnine/stats/stat_quantile.py,sha256=D-TC-c2Ul0eFggz688X0l6MaqDrVmCBMM3aviiLTpHc,2481
179
- plotnine/stats/stat_sina.py,sha256=IAUxNoj001jctsSQaRiN81GpGFTeX35dqdWLMvnzIaA,9449
180
- plotnine/stats/stat_smooth.py,sha256=hiJ5y7ai_qaFv8xxPeLs3BS6IPRvOy6Nor6SGA2H0wU,8016
181
- plotnine/stats/stat_sum.py,sha256=CgxZlcwJ8t8gVojwSz55UEOKwDC0MfI5ISWrwDbqy4w,1655
182
- plotnine/stats/stat_summary.py,sha256=RuuliRixo9c6sDnKmsQBXSJvfzkH2Oru7tyl88mpqzI,9289
183
- plotnine/stats/stat_summary_bin.py,sha256=sf9NPmSzyJML4-EfHNLmDB_wSyi5o4RAXIiIZLgNy9Q,5710
184
- plotnine/stats/stat_unique.py,sha256=7SXu_gb6h6YgLa1L-LM8hHe0jMZfcus4c_mEAN9zcWo,386
185
- plotnine/stats/stat_ydensity.py,sha256=cuGZwpBdotGhOLYaK_W_JvJSjCht9W1eJpbzW69ZhOY,5686
186
- plotnine/themes/__init__.py,sha256=tEKIF4gYmOF2Z1-_UDdK8zh41dLl-61HUGIhOQvki6I,916
187
- plotnine/themes/seaborn_rcmod.py,sha256=Pi-UX5LyH9teSuteYpqPOEnfLgKUz01LnKDyDA7Aois,15502
188
- plotnine/themes/targets.py,sha256=MjBRWWRgsLXXM_PJffPsV4DttQJB_m11jdD837BteuU,1686
189
- plotnine/themes/theme.py,sha256=sMEDXgbqMNRCnkS3AXIqE_KXdXrXVjwf3r1Kr0WnE5E,16244
190
- plotnine/themes/theme_538.py,sha256=6ZeIzzJ1VTgCMBYw4uprSjkS8GtcFvJmOIGjbm7h3Ok,1141
191
- plotnine/themes/theme_bw.py,sha256=KDOqt5C6SYaxr05ngZoTmvGvgZVeCDFLWOpChcO-Hek,1077
192
- plotnine/themes/theme_classic.py,sha256=B6QkU6blGnEY5iaiPtu4VsvFzC0peWSAhlKiC2SJSkM,923
193
- plotnine/themes/theme_dark.py,sha256=RbdMfK9GW3q5XFIVgSe_OH-ozohSgjMoxMYqw40QZJ4,1335
194
- plotnine/themes/theme_gray.py,sha256=9NVn5jOh_ypMbtnkICQk_v6GsL2gUzjal1xQKMHmwFk,5300
195
- plotnine/themes/theme_light.py,sha256=-vFWjP_vBMnuThNxkhVJvT9rKtr0tXWcrHDKdI_G3Ic,1429
196
- plotnine/themes/theme_linedraw.py,sha256=woMr18xoEJmsD8ZCiUpdyn-CE-P1AGFHRNapwCGWUjg,1350
197
- plotnine/themes/theme_matplotlib.py,sha256=Dqjr4J68lPxaCxp6Xq9VthOOS5CZLit-pL3zMV24ZaA,4260
198
- plotnine/themes/theme_minimal.py,sha256=YhkKNA48jP2OLa8-kHMfXFEFRjcsfWBLMID2orITrmo,884
199
- plotnine/themes/theme_seaborn.py,sha256=l4lz5qD5CqhqBDgfQ61Mye3TX3f5aCHoHHx1Q04j-OI,4211
200
- plotnine/themes/theme_tufte.py,sha256=qUOrZhQyfJgc0fmy8Es7tT7aYqUSzCjvkP7-dBilwHE,1926
201
- plotnine/themes/theme_void.py,sha256=bU2REV9dI4x2kDIlPO6Oaq3E5di2cE8VDH-hRrnWEMc,3367
202
- plotnine/themes/theme_xkcd.py,sha256=q3i1W97kBwpCRbR_Y609JxcfJA2cEX5e5iAS7flbF6I,2257
203
- plotnine/themes/themeable.py,sha256=kYrk9Bq4274BD5cz1fGRgkdDwrvKhznrbhViXxl0PG0,69181
204
- plotnine/themes/elements/__init__.py,sha256=Z9xHdhyWPNR2uF_P80aBEXYWp1DU-T2KGOuM7VimpbM,295
205
- plotnine/themes/elements/element_base.py,sha256=D7cfEglzsSuhW91KpZVAZ2MAHWZp64r9Aajoh8uMGZ4,832
206
- plotnine/themes/elements/element_blank.py,sha256=4r7-6HeR1494oWNIGQh0ASrFQ4SLvYa6aQHA85eH-Ds,187
207
- plotnine/themes/elements/element_line.py,sha256=xF6xW-iA66YEP_fN7ooqaYry8_8qZT-eT5wvKwXg3to,1838
208
- plotnine/themes/elements/element_rect.py,sha256=w5cLH-Sr4cTRXVdkRiu8kBqFt3TXHhIb1MUITfi89gE,1767
209
- plotnine/themes/elements/element_text.py,sha256=8yhwBa9s9JKCtBcqcBNybbCGK6ieDnZv4SHiC4Sy2qc,6255
210
- plotnine/themes/elements/margin.py,sha256=EsT46lqky7APHxMUDiNiTieNo_SIbHF-Sjhmf9zo4WY,2880
211
- plotnine-0.15.0.dev3.dist-info/licenses/LICENSE,sha256=GY4tQiUd17Tq3wWR42Zs9MRTFOTf6ahIXhZTcwAdOeU,1082
212
- plotnine-0.15.0.dev3.dist-info/METADATA,sha256=0Cwjkbtul-pvjlRpBQzRcLgAbr4G9rI3NLSu6sLhtgA,9289
213
- plotnine-0.15.0.dev3.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
214
- plotnine-0.15.0.dev3.dist-info/top_level.txt,sha256=t340Mbko1ZbmvYPkQ81dIiPHcaQdTUszYz-bWUpr8ys,9
215
- plotnine-0.15.0.dev3.dist-info/RECORD,,