plotnine 0.15.0a4__tar.gz → 0.15.0a6__tar.gz

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 (673) hide show
  1. {plotnine-0.15.0a4/plotnine.egg-info → plotnine-0.15.0a6}/PKG-INFO +1 -1
  2. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/_quartodoc.yml +10 -0
  3. plotnine-0.15.0a6/doc/_renderer.py +124 -0
  4. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/changelog.qmd +3 -0
  5. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/plotnine.scss +6 -0
  6. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/layout_manager/_engine.py +2 -2
  7. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/layout_manager/_layout_tree.py +4 -4
  8. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_utils/__init__.py +13 -0
  9. plotnine-0.15.0a6/plotnine/composition/__init__.py +11 -0
  10. plotnine-0.15.0a4/plotnine/plot_composition/_compose.py → plotnine-0.15.0a6/plotnine/composition/_arrange.py +48 -118
  11. plotnine-0.15.0a6/plotnine/composition/_beside.py +47 -0
  12. plotnine-0.15.0a6/plotnine/composition/_plot_spacer.py +49 -0
  13. plotnine-0.15.0a6/plotnine/composition/_stack.py +47 -0
  14. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom.py +29 -17
  15. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/ggplot.py +12 -26
  16. plotnine-0.15.0a6/plotnine/mapping/_atomic.py +178 -0
  17. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_manual.py +2 -0
  18. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/elements/element_line.py +17 -9
  19. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/themeable.py +24 -13
  20. {plotnine-0.15.0a4 → plotnine-0.15.0a6/plotnine.egg-info}/PKG-INFO +1 -1
  21. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine.egg-info/SOURCES.txt +7 -4
  22. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/conftest.py +4 -4
  23. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_scale_internals.py +7 -2
  24. plotnine-0.15.0a4/doc/_renderer.py +0 -90
  25. plotnine-0.15.0a4/plotnine/plot_composition/__init__.py +0 -10
  26. plotnine-0.15.0a4/plotnine/plot_composition/_spacer.py +0 -32
  27. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.gitattributes +0 -0
  28. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.github/DISCUSSION_TEMPLATE/2024-plotnine-contest.yml +0 -0
  29. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.github/utils/_repo.py +0 -0
  30. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.github/utils/please.py +0 -0
  31. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.github/workflows/documentation.yml +0 -0
  32. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.github/workflows/release.yml +0 -0
  33. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.github/workflows/testing.yml +0 -0
  34. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.github/workflows/weekly.yml +0 -0
  35. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.gitignore +0 -0
  36. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.pre-commit-config.yaml +0 -0
  37. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/.readthedocs.yaml +0 -0
  38. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/CITATION.bib +0 -0
  39. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/LICENSE +0 -0
  40. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/Makefile +0 -0
  41. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/README.md +0 -0
  42. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/code-of-conduct.md +0 -0
  43. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/codecov.yml +0 -0
  44. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/.gitignore +0 -0
  45. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/Makefile +0 -0
  46. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/_config.py +0 -0
  47. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/_quarto.yml +0 -0
  48. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/favicon-16x16.png +0 -0
  49. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/favicon-32x32.png +0 -0
  50. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/logo-512.png +0 -0
  51. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/logo.png +0 -0
  52. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/readme-image-1.png +0 -0
  53. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/readme-image-2.png +0 -0
  54. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/readme-image-3.png +0 -0
  55. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/readme-image-4.png +0 -0
  56. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/readme-image-5.png +0 -0
  57. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/readme-image-5alt.png +0 -0
  58. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/doc/images/readme_images.py +0 -0
  59. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/licences/SEABORN_LICENSE +0 -0
  60. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/__init__.py +0 -0
  61. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/__init__.py +0 -0
  62. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/gridspec.py +0 -0
  63. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/layout_manager/__init__.py +0 -0
  64. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/layout_manager/_layout_items.py +0 -0
  65. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/layout_manager/_spaces.py +0 -0
  66. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/offsetbox.py +0 -0
  67. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/patches.py +0 -0
  68. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/text.py +0 -0
  69. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/ticker.py +0 -0
  70. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/transforms.py +0 -0
  71. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_mpl/utils.py +0 -0
  72. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_utils/context.py +0 -0
  73. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_utils/dev.py +0 -0
  74. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_utils/ipython.py +0 -0
  75. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_utils/quarto.py +0 -0
  76. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_utils/registry.py +0 -0
  77. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/_utils/yippie.py +0 -0
  78. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/animation.py +0 -0
  79. {plotnine-0.15.0a4/plotnine/plot_composition → plotnine-0.15.0a6/plotnine/composition}/_plotspec.py +0 -0
  80. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/coords/__init__.py +0 -0
  81. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/coords/coord.py +0 -0
  82. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/coords/coord_cartesian.py +0 -0
  83. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/coords/coord_fixed.py +0 -0
  84. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/coords/coord_flip.py +0 -0
  85. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/coords/coord_trans.py +0 -0
  86. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/__init__.py +0 -0
  87. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/anscombe-quartet.csv +0 -0
  88. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/diamonds.csv +0 -0
  89. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/economics.csv +0 -0
  90. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/economics_long.csv +0 -0
  91. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/faithful.csv +0 -0
  92. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/faithfuld.csv +0 -0
  93. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/huron.csv +0 -0
  94. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/luv_colours.csv +0 -0
  95. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/meat.csv +0 -0
  96. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/midwest.csv +0 -0
  97. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/mpg.csv +0 -0
  98. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/msleep.csv +0 -0
  99. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/mtcars.csv +0 -0
  100. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/pageviews.csv +0 -0
  101. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/penguins.csv +0 -0
  102. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/presidential.csv +0 -0
  103. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/seals.csv +0 -0
  104. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/data/txhousing.csv +0 -0
  105. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/doctools.py +0 -0
  106. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/exceptions.py +0 -0
  107. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/facets/__init__.py +0 -0
  108. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/facets/facet.py +0 -0
  109. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/facets/facet_grid.py +0 -0
  110. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/facets/facet_null.py +0 -0
  111. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/facets/facet_wrap.py +0 -0
  112. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/facets/labelling.py +0 -0
  113. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/facets/layout.py +0 -0
  114. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/facets/strips.py +0 -0
  115. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/__init__.py +0 -0
  116. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/annotate.py +0 -0
  117. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/annotation_logticks.py +0 -0
  118. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/annotation_stripes.py +0 -0
  119. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_abline.py +0 -0
  120. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_area.py +2 -2
  121. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_bar.py +0 -0
  122. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_bin_2d.py +2 -2
  123. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_blank.py +0 -0
  124. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_boxplot.py +0 -0
  125. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_col.py +2 -2
  126. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_count.py +2 -2
  127. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_crossbar.py +0 -0
  128. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_density.py +0 -0
  129. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_density_2d.py +2 -2
  130. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_dotplot.py +0 -0
  131. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_errorbar.py +0 -0
  132. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_errorbarh.py +0 -0
  133. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_freqpoly.py +0 -0
  134. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_histogram.py +0 -0
  135. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_hline.py +0 -0
  136. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_jitter.py +0 -0
  137. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_label.py +0 -0
  138. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_line.py +0 -0
  139. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_linerange.py +0 -0
  140. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_map.py +2 -2
  141. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_path.py +0 -0
  142. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_point.py +0 -0
  143. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_pointdensity.py +0 -0
  144. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_pointrange.py +0 -0
  145. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_polygon.py +0 -0
  146. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_qq.py +0 -0
  147. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_qq_line.py +0 -0
  148. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_quantile.py +0 -0
  149. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_raster.py +0 -0
  150. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_rect.py +0 -0
  151. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_ribbon.py +0 -0
  152. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_rug.py +0 -0
  153. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_segment.py +0 -0
  154. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_sina.py +2 -2
  155. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_smooth.py +0 -0
  156. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_spoke.py +0 -0
  157. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_step.py +0 -0
  158. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_text.py +0 -0
  159. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_tile.py +0 -0
  160. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_violin.py +0 -0
  161. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/geoms/geom_vline.py +0 -0
  162. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/guides/__init__.py +0 -0
  163. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/guides/guide.py +0 -0
  164. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/guides/guide_axis.py +0 -0
  165. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/guides/guide_colorbar.py +0 -0
  166. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/guides/guide_legend.py +0 -0
  167. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/guides/guides.py +0 -0
  168. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/helpers.py +0 -0
  169. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/iapi.py +0 -0
  170. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/labels.py +0 -0
  171. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/layer.py +0 -0
  172. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/mapping/__init__.py +0 -0
  173. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/mapping/_env.py +0 -0
  174. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/mapping/_eval_environment.py +0 -0
  175. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/mapping/aes.py +0 -0
  176. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/mapping/evaluation.py +0 -0
  177. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/options.py +0 -0
  178. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/__init__.py +0 -0
  179. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/position.py +0 -0
  180. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/position_dodge.py +0 -0
  181. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/position_dodge2.py +0 -0
  182. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/position_fill.py +0 -0
  183. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/position_identity.py +0 -0
  184. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/position_jitter.py +0 -0
  185. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/position_jitterdodge.py +0 -0
  186. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/position_nudge.py +0 -0
  187. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/positions/position_stack.py +0 -0
  188. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/py.typed +0 -0
  189. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/qplot.py +0 -0
  190. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/__init__.py +0 -0
  191. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/_expand.py +0 -0
  192. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/_runtime_typing.py +0 -0
  193. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/limits.py +0 -0
  194. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/range.py +0 -0
  195. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale.py +0 -0
  196. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_alpha.py +0 -0
  197. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_color.py +0 -0
  198. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_continuous.py +0 -0
  199. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_datetime.py +0 -0
  200. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_discrete.py +0 -0
  201. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_identity.py +0 -0
  202. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_linetype.py +0 -0
  203. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_shape.py +0 -0
  204. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_size.py +0 -0
  205. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_stroke.py +0 -0
  206. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scale_xy.py +0 -0
  207. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/scales/scales.py +0 -0
  208. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/__init__.py +0 -0
  209. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/binning.py +0 -0
  210. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/density.py +0 -0
  211. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/distributions.py +0 -0
  212. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/smoothers.py +0 -0
  213. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat.py +0 -0
  214. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_bin.py +0 -0
  215. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_bin_2d.py +0 -0
  216. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_bindot.py +0 -0
  217. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_boxplot.py +0 -0
  218. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_count.py +0 -0
  219. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_density.py +0 -0
  220. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_density_2d.py +0 -0
  221. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_ecdf.py +0 -0
  222. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_ellipse.py +0 -0
  223. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_function.py +0 -0
  224. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_hull.py +0 -0
  225. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_identity.py +0 -0
  226. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_pointdensity.py +0 -0
  227. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_qq.py +0 -0
  228. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_qq_line.py +0 -0
  229. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_quantile.py +0 -0
  230. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_sina.py +0 -0
  231. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_smooth.py +0 -0
  232. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_sum.py +0 -0
  233. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_summary.py +0 -0
  234. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_summary_bin.py +0 -0
  235. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_unique.py +0 -0
  236. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/stats/stat_ydensity.py +0 -0
  237. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/__init__.py +0 -0
  238. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/elements/__init__.py +0 -0
  239. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/elements/element_base.py +0 -0
  240. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/elements/element_blank.py +0 -0
  241. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/elements/element_rect.py +0 -0
  242. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/elements/element_text.py +0 -0
  243. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/elements/margin.py +0 -0
  244. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/seaborn_rcmod.py +0 -0
  245. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/targets.py +0 -0
  246. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme.py +0 -0
  247. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_538.py +0 -0
  248. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_bw.py +0 -0
  249. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_classic.py +0 -0
  250. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_dark.py +0 -0
  251. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_gray.py +0 -0
  252. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_light.py +0 -0
  253. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_linedraw.py +0 -0
  254. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_matplotlib.py +0 -0
  255. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_minimal.py +0 -0
  256. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_seaborn.py +0 -0
  257. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_tufte.py +0 -0
  258. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_void.py +0 -0
  259. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/themes/theme_xkcd.py +0 -0
  260. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/typing.py +0 -0
  261. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine/watermark.py +0 -0
  262. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine.egg-info/dependency_links.txt +0 -0
  263. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine.egg-info/requires.txt +0 -0
  264. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/plotnine.egg-info/top_level.txt +0 -0
  265. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/pyproject.toml +0 -0
  266. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/requirements/doc.txt +0 -0
  267. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/setup.cfg +0 -0
  268. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_aes/geom_crossbar.png +0 -0
  269. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_aes/irregular_shapes.png +0 -0
  270. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_aes/reorder.png +0 -0
  271. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_aes/reorder_index.png +0 -0
  272. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_aes/stat_bin_2d.png +0 -0
  273. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_aes/stat_ecdf.png +0 -0
  274. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_aes/test_stat_function.png +0 -0
  275. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotate/annotate_faceting.png +0 -0
  276. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotate/multiple_annotation_geoms.png +0 -0
  277. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_logticks/annotation_logticks.png +0 -0
  278. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_logticks/annotation_logticks_base_5.png +0 -0
  279. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_logticks/annotation_logticks_base_8.png +0 -0
  280. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_logticks/annotation_logticks_coord_flip.png +0 -0
  281. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_logticks/annotation_logticks_coord_flip_discrete.png +0 -0
  282. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_logticks/annotation_logticks_coord_flip_discrete_bottom.png +0 -0
  283. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_logticks/annotation_logticks_faceting.png +0 -0
  284. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_stripes/annotation_stripes.png +0 -0
  285. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_stripes/annotation_stripes_continuous_scale.png +0 -0
  286. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_stripes/annotation_stripes_coord_flip.png +0 -0
  287. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_stripes/annotation_stripes_faceting.png +0 -0
  288. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_stripes/annotation_stripes_fill_direction_extend.png +0 -0
  289. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_stripes/annotation_stripes_fill_range.png +0 -0
  290. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_stripes/annotation_stripes_fill_range_cycle.png +0 -0
  291. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_annotation_stripes/annotation_stripes_single_stripe.png +0 -0
  292. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_coords/coord_fixed.png +0 -0
  293. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_coords/coord_flip.png +0 -0
  294. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_coords/coord_trans.png +0 -0
  295. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_coords/coord_trans_backtransform.png +0 -0
  296. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_coords/coord_trans_reverse.png +0 -0
  297. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_coords/datetime_scale_limits.png +0 -0
  298. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/aslabeller_dict_0tag.png +0 -0
  299. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/aslabeller_func_hashtagit.png +0 -0
  300. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/label_both.png +0 -0
  301. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/label_context.png +0 -0
  302. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/label_context_wrap2vars.png +0 -0
  303. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/label_value.png +0 -0
  304. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/labeller_cols_both_grid.png +0 -0
  305. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/labeller_cols_both_wrap.png +0 -0
  306. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/labeller_towords.png +0 -0
  307. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facet_labelling/uneven_num_of_lines.png +0 -0
  308. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/array_mapping_and_evaluation.png +0 -0
  309. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/dir_v_ncol.png +0 -0
  310. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_drop_false.png +0 -0
  311. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_expression.png +0 -0
  312. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_formula_only_cols.png +0 -0
  313. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_formula_only_rows.png +0 -0
  314. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_margins.png +0 -0
  315. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_one_by_one_var.png +0 -0
  316. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_scales_free_x.png +0 -0
  317. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_scales_free_y.png +0 -0
  318. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_space_free.png +0 -0
  319. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_grid_space_ratios.png +0 -0
  320. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_wrap_direction_v.png +0 -0
  321. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_wrap_expression.png +0 -0
  322. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_wrap_label_both.png +0 -0
  323. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_wrap_not_as_table.png +0 -0
  324. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_wrap_not_as_table_direction_v.png +0 -0
  325. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_wrap_one_var.png +0 -0
  326. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/facet_wrap_two_vars.png +0 -0
  327. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/manual_mapping_with_lists.png +0 -0
  328. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/non_mapped_facetting.png +0 -0
  329. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_facets/variable_and_annotate.png +0 -0
  330. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_abline/aes_inheritance.png +0 -0
  331. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_abline/aesthetics.png +0 -0
  332. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_bar_col_histogram/bar-count.png +0 -0
  333. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_bar_col_histogram/col.png +0 -0
  334. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_bar_col_histogram/col_just.png +0 -0
  335. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_bar_col_histogram/histogram-count.png +0 -0
  336. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_bar_col_histogram/histogram_weights.png +0 -0
  337. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_bar_col_histogram/stat-count-float.png +0 -0
  338. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_bar_col_histogram/stat-count-int.png +0 -0
  339. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_bin_2d/drop_false.png +0 -0
  340. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_bin_2d/drop_true.png +0 -0
  341. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_blank/blank.png +0 -0
  342. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_boxplot/aesthetics+coord_flip.png +0 -0
  343. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_boxplot/aesthetics.png +0 -0
  344. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_boxplot/no_outliers.png +0 -0
  345. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_boxplot/params.png +0 -0
  346. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_boxplot/position_nudge.png +0 -0
  347. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_boxplot/weight.png +0 -0
  348. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_count/continuous_x_y.png +0 -0
  349. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_count/discrete_x.png +0 -0
  350. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_count/discrete_y.png +0 -0
  351. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_crossbar/aesthetics.png +0 -0
  352. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_density/bounds.png +0 -0
  353. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_density/few_datapoints.png +0 -0
  354. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_density/gaussian-trimmed.png +0 -0
  355. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_density/gaussian.png +0 -0
  356. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_density/gaussian_weighted.png +0 -0
  357. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_density/triangular.png +0 -0
  358. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_density_2d/contours.png +0 -0
  359. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_density_2d/points.png +0 -0
  360. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_density_2d/polygon.png +0 -0
  361. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/binaxis_y.png +0 -0
  362. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/dotdensity.png +0 -0
  363. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/group_basic.png +0 -0
  364. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/group_stackgroups.png +0 -0
  365. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/group_stackgroups_binaxis_y.png +0 -0
  366. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/histodot.png +0 -0
  367. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/stackdir_center.png +0 -0
  368. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/stackdir_centerwhole.png +0 -0
  369. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/stackdir_down.png +0 -0
  370. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_dotplot/stackratio.png +0 -0
  371. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_errorbar_errorbarh/errorbar_aesthetics.png +0 -0
  372. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_errorbar_errorbarh/errorbarh_aesthetics.png +0 -0
  373. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_freqpoly/midpoint.png +0 -0
  374. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_hline/aesthetics.png +0 -0
  375. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_linerange_pointrange/linerange_aesthetics.png +0 -0
  376. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_linerange_pointrange/pointrange_aesthetics.png +0 -0
  377. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_map/facet_wrap.png +0 -0
  378. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_map/geometries.png +0 -0
  379. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_map/multipoint.png +0 -0
  380. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_map/multipolygon.png +0 -0
  381. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_path_line_step/aesthetics.png +0 -0
  382. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_path_line_step/arrow.png +0 -0
  383. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_path_line_step/arrow_facets.png +0 -0
  384. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_path_line_step/missing_values.png +0 -0
  385. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_path_line_step/no_missing_values.png +0 -0
  386. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_path_line_step/path_line_step.png +0 -0
  387. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_path_line_step/step.png +0 -0
  388. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_path_line_step/step_mid.png +0 -0
  389. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_point/aesthetics.png +0 -0
  390. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_point/color_only_mapping.png +0 -0
  391. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_point/custom_shapes.png +0 -0
  392. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_point/legend_transparency.png +0 -0
  393. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_point/no_fill.png +0 -0
  394. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_point/no_mapping.png +0 -0
  395. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_pointdensity/contours.png +0 -0
  396. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_pointdensity/points.png +0 -0
  397. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_polygon/aesthetics.png +0 -0
  398. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_polygon/no_fill.png +0 -0
  399. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_qq_qq_line/normal.png +0 -0
  400. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_qq_qq_line/normal_with_line.png +0 -0
  401. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_quantile/lines.png +0 -0
  402. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_raster/gap_no_interpolation.png +0 -0
  403. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_raster/gap_with_interpolation.png +0 -0
  404. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_raster/rectangle.png +0 -0
  405. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_raster/square.png +0 -0
  406. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_rect_tile/coord-trans-groups.png +0 -0
  407. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_rect_tile/coord-trans.png +0 -0
  408. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_rect_tile/infinite-rects.png +0 -0
  409. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_rect_tile/rect-aesthetics.png +0 -0
  410. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_rect_tile/rect-nofill.png +0 -0
  411. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_rect_tile/tile-aesthetics.png +0 -0
  412. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_ribbon_area/area_aesthetics.png +0 -0
  413. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_ribbon_area/ribbon_aesthetics.png +0 -0
  414. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_ribbon_area/ribbon_coord_flip.png +0 -0
  415. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_ribbon_area/ribbon_facetting.png +0 -0
  416. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_ribbon_area/ribbon_outline_type.png +0 -0
  417. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_ribbon_area/ribbon_outline_type_coord_flip.png +0 -0
  418. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_ribbon_area/ribbon_where.png +0 -0
  419. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_rug/aesthetics.png +0 -0
  420. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_rug/coord_flip.png +0 -0
  421. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_segment/aesthetics.png +0 -0
  422. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_segment/arrow.png +0 -0
  423. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_sina/method_counts.png +0 -0
  424. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_sina/scale_area+coord_flip.png +0 -0
  425. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_sina/scale_area.png +0 -0
  426. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_sina/scale_count.png +0 -0
  427. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_sina/style.png +0 -0
  428. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/continuous_x.png +0 -0
  429. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/continuous_x_fullrange.png +0 -0
  430. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/coord_trans_se_false.png +0 -0
  431. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/discrete_x.png +0 -0
  432. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/discrete_x_fullrange.png +0 -0
  433. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/glm_formula.png +0 -0
  434. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/gls_formula.png +0 -0
  435. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/init_and_fit_kwargs.png +0 -0
  436. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/legend_fill_ratio.png +0 -0
  437. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/linear_smooth.png +0 -0
  438. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/linear_smooth_no_ci.png +0 -0
  439. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/lm_formula.png +0 -0
  440. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/lm_formula_weights.png +0 -0
  441. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/non_linear_smooth.png +0 -0
  442. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/non_linear_smooth_no_ci.png +0 -0
  443. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/rlm_formula.png +0 -0
  444. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_smooth/sorts_by_x.png +0 -0
  445. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_spoke/aesthetics.png +0 -0
  446. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_spoke/test_unmapped_angle.png +0 -0
  447. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_text_label/adjust_label.png +0 -0
  448. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_text_label/adjust_text.png +0 -0
  449. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_text_label/adjust_text_default_color.png +0 -0
  450. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_text_label/format_missing_values.png +0 -0
  451. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_text_label/label_aesthetics.png +0 -0
  452. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_text_label/text_aesthetics.png +0 -0
  453. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_violin/aesthetics+coord_flip.png +0 -0
  454. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_violin/aesthetics.png +0 -0
  455. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_violin/no_trim.png +0 -0
  456. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_violin/overlap.png +0 -0
  457. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_violin/quantiles_width_dodge.png +0 -0
  458. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_violin/scale.png +0 -0
  459. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_violin/scales_free.png +0 -0
  460. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_violin/style.png +0 -0
  461. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_violin/style_alternating.png +0 -0
  462. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_geom_vline/aesthetics.png +0 -0
  463. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_ggplot_internals/after_scale_mapping.png +0 -0
  464. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_ggplot_internals/to_pandas.png +0 -0
  465. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_guide_internals/guide_legend_after_scale.png +0 -0
  466. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layers/inserting_layers.png +0 -0
  467. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/axis_text_justification.png +0 -0
  468. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/axis_title_x_justification.png +0 -0
  469. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/axis_title_y_justification.png +0 -0
  470. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/colorbar_frame.png +0 -0
  471. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/default.png +0 -0
  472. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/default_tag_location.png +0 -0
  473. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/different_colorbar_themes.png +0 -0
  474. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/facet_grid.png +0 -0
  475. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/facet_wrap.png +0 -0
  476. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/facet_wrap_scales_free.png +0 -0
  477. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/inside_legend_90pct_top_right.png +0 -0
  478. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/inside_legend_left.png +0 -0
  479. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/inside_legend_top.png +0 -0
  480. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/inside_legend_top_right.png +0 -0
  481. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/justification_with_blank_title_and_text.png +0 -0
  482. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/legend_at_the_bottom.png +0 -0
  483. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/legend_at_top.png +0 -0
  484. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/legend_on_the_left.png +0 -0
  485. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/legends_in_different_positions.png +0 -0
  486. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/margin_bottom.png +0 -0
  487. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/outside_legend_bottom_left.png +0 -0
  488. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/outside_legend_left_top.png +0 -0
  489. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/outside_legend_right_bottom.png +0 -0
  490. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/outside_legend_top_right.png +0 -0
  491. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/panel_bottomleft.png +0 -0
  492. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/panel_topleft_margin_in_fig.png +0 -0
  493. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/panel_topleft_margin_in_pt.png +0 -0
  494. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/panel_topleft_margin_in_pt_ar1.png +0 -0
  495. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/panel_xycoords.png +0 -0
  496. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/plot_margin_aspect_ratio.png +0 -0
  497. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/plot_margin_protruding_axis_text.png +0 -0
  498. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/plot_title_justification.png +0 -0
  499. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/plot_titles_and_caption_positioning.png +0 -0
  500. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/plot_topright.png +0 -0
  501. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/plot_topright_margin_in_fig.png +0 -0
  502. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/plot_topright_margin_in_pt.png +0 -0
  503. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/plot_xycoords.png +0 -0
  504. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_layout/turn_off_guide.png +0 -0
  505. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_plot_composition/basic_horizontal_align_resize.png +0 -0
  506. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_plot_composition/basic_vertical_align_resize.png +0 -0
  507. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_plot_composition/complex_composition.png +0 -0
  508. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_plot_composition/facets.png +0 -0
  509. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_plot_composition/horizontal_tag_align.png +0 -0
  510. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_plot_composition/nested_horizontal_align_resize.png +0 -0
  511. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_plot_composition/nested_vertical_align_resize.png +0 -0
  512. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_plot_composition/vertical_tag_align.png +0 -0
  513. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/dodge.png +0 -0
  514. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/dodge2.png +0 -0
  515. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/dodge2_preserve_single_interval.png +0 -0
  516. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/dodge2_varwidth.png +0 -0
  517. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/dodge_preserve_single.png +0 -0
  518. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/dodge_preserve_single_text.png +0 -0
  519. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/dodge_segment.png +0 -0
  520. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/fill.png +0 -0
  521. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/jitter.png +0 -0
  522. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/jitterdodge.png +0 -0
  523. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/nudge.png +0 -0
  524. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/stack-negative.png +0 -0
  525. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/stack-non-linear-scale.png +0 -0
  526. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_position/stack.png +0 -0
  527. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/arrays.png +0 -0
  528. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/multiple_geoms.png +0 -0
  529. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/onlyx.png +0 -0
  530. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/onlyy.png +0 -0
  531. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/range.png +0 -0
  532. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/sample.png +0 -0
  533. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/scalars.png +0 -0
  534. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/series_labelling.png +0 -0
  535. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/string-arrays.png +0 -0
  536. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/xlim.png +0 -0
  537. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_qplot/ylim.png +0 -0
  538. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/bool_mapping.png +0 -0
  539. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/breaks_and_labels_outside_of_limits.png +0 -0
  540. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/datetime_scale_expansion.png +0 -0
  541. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/datetime_scale_limits.png +0 -0
  542. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/discrete_xy_scale_drop_limits.png +0 -0
  543. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/expand_limits.png +0 -0
  544. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/legend_ordering_added_scales.png +0 -0
  545. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/legend_ordering_global_aesthetics_1.png +0 -0
  546. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/legend_ordering_global_aesthetics_2.png +0 -0
  547. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/legend_ordering_local_aesthetics_1.png +0 -0
  548. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/legend_ordering_local_aesthetics_2.png +0 -0
  549. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/legend_ordering_mixed_scope_aesthetics.png +0 -0
  550. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/missing_data_discrete_position_scale.png +0 -0
  551. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/missing_data_discrete_scale.png +0 -0
  552. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/missing_manual_dict_aesthetic.png +0 -0
  553. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/multiple_aesthetics.png +0 -0
  554. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/ordinal_scale.png +0 -0
  555. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/test_legend_ordering_with_identity_scale.png +0 -0
  556. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/transform_aes_defaults_and_params.png +0 -0
  557. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_internals/transform_datetime_aes_param.png +0 -0
  558. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_labelling/caption_complex.png +0 -0
  559. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_labelling/caption_simple.png +0 -0
  560. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_labelling/labelling_with_colour.png +0 -0
  561. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_linetype/scale_linetype_manual_strings.png +0 -0
  562. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_linetype/scale_linetype_manual_tuples.png +0 -0
  563. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_scale_symlog/scale_y_symlog.png +0 -0
  564. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_ecdf/computed_y_column.png +0 -0
  565. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_ecdf/ecdf.png +0 -0
  566. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_ecdf/ecdf_no_pad.png +0 -0
  567. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_ellipse/ellipse.png +0 -0
  568. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_function/args.png +0 -0
  569. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_function/limits.png +0 -0
  570. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_hull/hull.png +0 -0
  571. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary/fun_args.png +0 -0
  572. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary/mean_cl_boot.png +0 -0
  573. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary/mean_cl_normal.png +0 -0
  574. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary/mean_sdl.png +0 -0
  575. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary/mean_se.png +0 -0
  576. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary/median_hilow.png +0 -0
  577. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary/summary_functions.png +0 -0
  578. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary_bin/continuous_x.png +0 -0
  579. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary_bin/discrete_x.png +0 -0
  580. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_stat_summary_bin/setting_binwidth.png +0 -0
  581. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/axis_ticks_and_length.png +0 -0
  582. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/element_text_with_sequence_values.png +0 -0
  583. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/no_ticks.png +0 -0
  584. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/override_axis_text.png +0 -0
  585. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_538.png +0 -0
  586. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_bw.png +0 -0
  587. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_classic.png +0 -0
  588. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_dark.png +0 -0
  589. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_gray.png +0 -0
  590. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_light.png +0 -0
  591. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_linedraw.png +0 -0
  592. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_matplotlib.png +0 -0
  593. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_minimal.png +0 -0
  594. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_seaborn.png +0 -0
  595. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_tufte.png +0 -0
  596. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_void.png +0 -0
  597. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_xkcd.png +0 -0
  598. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_theme/theme_xkcd_ci.png +0 -0
  599. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/baseline_images/test_watermark/watermark.png +0 -0
  600. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/images/plotnine-watermark.png +0 -0
  601. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_aes.py +0 -0
  602. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_animation.py +0 -0
  603. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_annotate.py +0 -0
  604. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_annotation_logticks.py +0 -0
  605. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_annotation_stripes.py +0 -0
  606. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_binning.py +0 -0
  607. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_coords.py +0 -0
  608. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_doctools.py +0 -0
  609. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_facet_labelling.py +0 -0
  610. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_facets.py +0 -0
  611. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom.py +0 -0
  612. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_abline.py +0 -0
  613. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_bar_col_histogram.py +0 -0
  614. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_bin_2d.py +0 -0
  615. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_blank.py +0 -0
  616. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_boxplot.py +0 -0
  617. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_count.py +0 -0
  618. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_crossbar.py +0 -0
  619. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_density.py +0 -0
  620. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_density_2d.py +0 -0
  621. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_dotplot.py +0 -0
  622. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_errorbar_errorbarh.py +0 -0
  623. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_freqpoly.py +0 -0
  624. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_hline.py +0 -0
  625. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_linerange_pointrange.py +0 -0
  626. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_map.py +0 -0
  627. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_path_line_step.py +0 -0
  628. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_point.py +0 -0
  629. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_pointdensity.py +0 -0
  630. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_polygon.py +0 -0
  631. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_qq_qq_line.py +0 -0
  632. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_quantile.py +0 -0
  633. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_raster.py +0 -0
  634. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_rect_tile.py +0 -0
  635. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_ribbon_area.py +0 -0
  636. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_rug.py +0 -0
  637. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_segment.py +0 -0
  638. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_sina.py +0 -0
  639. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_smooth.py +0 -0
  640. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_spoke.py +0 -0
  641. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_text_label.py +0 -0
  642. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_violin.py +0 -0
  643. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_geom_vline.py +0 -0
  644. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_ggplot_internals.py +0 -0
  645. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_ggsave.py +0 -0
  646. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_guide_internals.py +0 -0
  647. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_helpers.py +0 -0
  648. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_layers.py +0 -0
  649. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_layout.py +0 -0
  650. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_lint_and_format.py +0 -0
  651. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_plot_composition.py +0 -0
  652. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_position.py +0 -0
  653. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_qplot.py +0 -0
  654. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_save_as_pdf_pages.py +0 -0
  655. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_scale_labelling.py +0 -0
  656. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_scale_linetype.py +0 -0
  657. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_scale_symlog.py +0 -0
  658. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_stat.py +0 -0
  659. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_stat_calculate_methods.py +0 -0
  660. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_stat_ecdf.py +0 -0
  661. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_stat_ellipse.py +0 -0
  662. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_stat_function.py +0 -0
  663. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_stat_hull.py +0 -0
  664. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_stat_summary.py +0 -0
  665. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_stat_summary_bin.py +0 -0
  666. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_theme.py +0 -0
  667. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_utils.py +0 -0
  668. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tests/test_watermark.py +0 -0
  669. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tools/release-checklist-tpl.md +0 -0
  670. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tools/release-checklist.py +0 -0
  671. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tools/term.py +0 -0
  672. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tools/update_baseline_images.py +0 -0
  673. {plotnine-0.15.0a4 → plotnine-0.15.0a6}/tools/visualize_tests.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: plotnine
3
- Version: 0.15.0a4
3
+ Version: 0.15.0a6
4
4
  Summary: A Grammar of Graphics for Python
5
5
  Author-email: Hassan Kibirige <has2k1@gmail.com>
6
6
  License: The MIT License (MIT)
@@ -532,6 +532,15 @@ quartodoc:
532
532
  - coord_flip
533
533
  - coord_trans
534
534
 
535
+ - title: Composing Plots
536
+ package: plotnine.composition
537
+ contents:
538
+ - name: Arrange
539
+ include_attributes: false
540
+ - Stack
541
+ - Beside
542
+ - plot_spacer
543
+
535
544
  - title: Options
536
545
  desc: |
537
546
  When working interactively, some of the options make it convenient to
@@ -589,6 +598,7 @@ quartodoc:
589
598
  - msleep
590
599
  - mtcars
591
600
  - pageviews
601
+ - penguins
592
602
  - presidential
593
603
  - seals
594
604
  - txhousing
@@ -0,0 +1,124 @@
1
+ from __future__ import annotations
2
+
3
+ import re
4
+ from functools import cached_property
5
+ from pathlib import Path
6
+ from textwrap import dedent
7
+ from typing import TYPE_CHECKING
8
+
9
+ from qrenderer import (
10
+ QRenderer,
11
+ RenderDoc,
12
+ RenderDocClass,
13
+ exclude_parameters,
14
+ )
15
+ from qrenderer._pandoc.inlines import shortcode
16
+ from quartodoc.pandoc.blocks import Blocks, CodeBlock, Div, Header, Para
17
+ from quartodoc.pandoc.components import Attr
18
+ from quartodoc.pandoc.inlines import Code
19
+
20
+ if TYPE_CHECKING:
21
+ from typing import Literal
22
+
23
+
24
+ DOC_DIR = Path(__file__).parent
25
+ REFERENCE_DIR = DOC_DIR / "reference"
26
+ EXAMPLES_DIR = REFERENCE_DIR / "examples"
27
+
28
+ # We expect the usage to contain an indented block of code
29
+ usage_pattern = re.compile(
30
+ r"^\*\*Usage\*\*"
31
+ r"\s+"
32
+ r"(?P<indented_block>(?:"
33
+ r"^\s{4}[^\n]+\n*"
34
+ r")+)",
35
+ re.MULTILINE,
36
+ )
37
+ signature_pattern = re.compile(r"([a-zA-Z_]\w*)\s*\(([^)]*)\)")
38
+
39
+
40
+ class Renderer(QRenderer):
41
+ pass
42
+
43
+
44
+ exclude_parameters(
45
+ {
46
+ "plotnine.scale_color_hue": ("s", "color_space"),
47
+ }
48
+ )
49
+
50
+ summary_name_lookup = {
51
+ "Beside": f"{Code('|')} Beside",
52
+ "Stack": f"{Code('/')} Stack",
53
+ }
54
+
55
+
56
+ class _RenderDoc(RenderDoc):
57
+ def render_body(self):
58
+ body = super().render_body()
59
+ if self.kind == "type":
60
+ return body
61
+
62
+ notebook = EXAMPLES_DIR / f"{self.obj.name}.ipynb"
63
+ if not notebook.exists():
64
+ return body
65
+
66
+ relpath = notebook.relative_to(REFERENCE_DIR)
67
+ embed_notebook = shortcode("embed", f"{relpath}", echo="true")
68
+ header = Header(self.level + 1, "Examples")
69
+ return Blocks([body, header, embed_notebook])
70
+
71
+ @property
72
+ def summary_name(self):
73
+ name = super().summary_name
74
+ if name.startswith("options."):
75
+ # Until quartodoc makes it possible to use a tilde to use
76
+ # and objects name and not the qualified path, we have to
77
+ # create exceptions for all the qualified paths that we want
78
+ # to be short.
79
+ # Ref: https://github.com/machow/quartodoc/issues/230
80
+ name = name[8:]
81
+ elif name in summary_name_lookup:
82
+ name = summary_name_lookup[name]
83
+ return name
84
+
85
+
86
+ class _RenderDocClass(RenderDocClass):
87
+ @cached_property
88
+ def _usage(self) -> tuple[str, Literal["signature", "code"]] | None:
89
+ """
90
+ Parse the docstring **Usage** block
91
+ """
92
+ docstring = self.obj.docstring.value if self.obj.docstring else ""
93
+ if m := usage_pattern.search(docstring):
94
+ content = dedent(m.group("indented_block")).strip()
95
+ return (
96
+ content,
97
+ "signature" if signature_pattern.match(content) else "code",
98
+ )
99
+ return None
100
+
101
+ def __str__(self):
102
+ content = super().__str__()
103
+ # R
104
+ if res := self._usage:
105
+ # Render the content of the usage as code and if it looks
106
+ # a signature mark it as one.
107
+ usage, kind = res
108
+ before, classes = Para("Usage"), ["doc-class", "doc-usage"]
109
+ if kind == "signature":
110
+ before = None
111
+ classes.insert(0, "doc-signature")
112
+ new = Div(
113
+ [before, CodeBlock(usage, Attr(classes=["python"]))],
114
+ Attr(classes=classes),
115
+ )
116
+ content = usage_pattern.sub(f"{new}\n", content)
117
+ return content
118
+
119
+ def render_signature(self):
120
+ # A "Usage" that is a function signature voids the original
121
+ # signature
122
+ if (res := self._usage) and res[1] == "signature":
123
+ return None
124
+ return super().render_signature()
@@ -161,6 +161,9 @@ title: Changelog
161
161
  - Fixed bug in [](:class:`~plotnine.geom_hline`) where you could not map the `yintercept`
162
162
  aesthetic to a discrete variable.
163
163
 
164
+ - Fixed bug in all manual scales (`scale_*_manual`) where if you set `values`
165
+ to a `dict` then setting the breaks would lead to an error. {{< issue 949 >}}
166
+
164
167
  ## v0.14.5
165
168
  (2025-01-02)
166
169
  [![](https://zenodo.org/badge/DOI/10.5281/zenodo.14587381.svg)](https://doi.org/10.5281/zenodo.14587381)
@@ -35,6 +35,12 @@ $signature-border-color: tint-color($primary, 25%);
35
35
  margin-right: .5rem;
36
36
  }
37
37
 
38
+ .doc-usage:not(.doc-signature) > p {
39
+ margin-bottom: -1rem;
40
+ color: $gray-600;
41
+ font-size: 0.95rem;
42
+ }
43
+
38
44
  /*-- scss:functions --*/
39
45
 
40
46
  /*-- scss:uses --*/
@@ -13,7 +13,7 @@ if TYPE_CHECKING:
13
13
  from matplotlib.figure import Figure
14
14
 
15
15
  from plotnine import ggplot
16
- from plotnine.plot_composition import Compose
16
+ from plotnine.composition import Arrange
17
17
 
18
18
 
19
19
  class PlotnineLayoutEngine(LayoutEngine):
@@ -54,7 +54,7 @@ class PlotnineCompositionLayoutEngine(LayoutEngine):
54
54
  _adjust_compatible = True
55
55
  _colorbar_gridspec = False
56
56
 
57
- def __init__(self, composition: Compose):
57
+ def __init__(self, composition: Arrange):
58
58
  self.composition = composition
59
59
 
60
60
  def execute(self, fig: Figure):
@@ -7,7 +7,7 @@ from typing import TYPE_CHECKING, cast
7
7
 
8
8
  import numpy as np
9
9
 
10
- from plotnine.plot_composition import OR
10
+ from plotnine.composition import Beside
11
11
 
12
12
  from ._spaces import LayoutSpaces
13
13
 
@@ -16,7 +16,7 @@ if TYPE_CHECKING:
16
16
 
17
17
  from plotnine import ggplot
18
18
  from plotnine._mpl.gridspec import p9GridSpec
19
- from plotnine.plot_composition import Compose
19
+ from plotnine.composition import Arrange
20
20
 
21
21
 
22
22
  @dataclass
@@ -82,7 +82,7 @@ class LayoutTree:
82
82
 
83
83
  @staticmethod
84
84
  def create(
85
- cmp: Compose,
85
+ cmp: Arrange,
86
86
  lookup_spaces: dict[ggplot, LayoutSpaces],
87
87
  ) -> LayoutTree:
88
88
  """
@@ -109,7 +109,7 @@ class LayoutTree:
109
109
  else:
110
110
  nodes.append(LayoutTree.create(item, lookup_spaces))
111
111
 
112
- if isinstance(cmp, OR):
112
+ if isinstance(cmp, Beside):
113
113
  return ColumnsTree(cmp.gridspec, nodes)
114
114
  else:
115
115
  return RowsTree(cmp.gridspec, nodes)
@@ -1194,3 +1194,16 @@ def va_as_float(va: VerticalJustification | float) -> float:
1194
1194
  "center_baseline": 0.5,
1195
1195
  }
1196
1196
  return lookup[va] if isinstance(va, str) else va
1197
+
1198
+
1199
+ def has_alpha_channel(c: str | tuple) -> bool:
1200
+ """
1201
+ Return True if c a color with an alpha value
1202
+
1203
+ Either a 9 character hex string e.g. #AABBCC88 or
1204
+ an RGBA tuple e.g. (.6, .7, .8, .5)
1205
+ """
1206
+ if isinstance(c, str):
1207
+ return c.startswith("#") and len(c) == 9
1208
+ else:
1209
+ return color_utils.is_color_tuple(c) and len(c) == 4
@@ -0,0 +1,11 @@
1
+ from ._arrange import Arrange
2
+ from ._beside import Beside
3
+ from ._plot_spacer import plot_spacer
4
+ from ._stack import Stack
5
+
6
+ __all__ = (
7
+ "Arrange",
8
+ "Stack",
9
+ "Beside",
10
+ "plot_spacer",
11
+ )
@@ -2,7 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  import abc
4
4
  from copy import deepcopy
5
- from dataclasses import dataclass
5
+ from dataclasses import dataclass, field
6
6
  from io import BytesIO
7
7
  from typing import TYPE_CHECKING
8
8
 
@@ -24,9 +24,15 @@ if TYPE_CHECKING:
24
24
  from plotnine.ggplot import PlotAddable, ggplot
25
25
 
26
26
 
27
- class Compose:
27
+ @dataclass
28
+ class Arrange:
28
29
  """
29
- Arrange two or more plots
30
+ Base class for those that create plot compositions
31
+
32
+ As a user, you will never directly work with this class, except
33
+ the operators [`|`](`plotnine.composition.Beside`) and
34
+ [`/`](`plotnine.composition.Stack`) that are powered by subclasses
35
+ of this class.
30
36
 
31
37
  Parameters
32
38
  ----------
@@ -34,27 +40,26 @@ class Compose:
34
40
  The objects to be put together (composed).
35
41
  """
36
42
 
37
- def __init__(self, operands: list[ggplot | Compose]):
38
- self.operands = operands
43
+ operands: list[ggplot | Arrange]
39
44
 
40
- # These are created in the _create_figure method
41
- self.figure: Figure
42
- self.plotspecs: list[plotspec]
43
- self.gridspec: p9GridSpec
45
+ # These are created in the _create_figure method
46
+ figure: Figure = field(init=False, repr=False)
47
+ plotspecs: list[plotspec] = field(init=False, repr=False)
48
+ gridspec: p9GridSpec = field(init=False, repr=False)
44
49
 
45
50
  @abc.abstractmethod
46
- def __or__(self, rhs: ggplot | Compose) -> Compose:
51
+ def __or__(self, rhs: ggplot | Arrange) -> Arrange:
47
52
  """
48
53
  Add rhs as a column
49
54
  """
50
55
 
51
56
  @abc.abstractmethod
52
- def __truediv__(self, rhs: ggplot | Compose) -> Compose:
57
+ def __truediv__(self, rhs: ggplot | Arrange) -> Arrange:
53
58
  """
54
59
  Add rhs as a row
55
60
  """
56
61
 
57
- def __add__(self, rhs: ggplot | Compose | PlotAddable) -> Compose:
62
+ def __add__(self, rhs: ggplot | Arrange | PlotAddable) -> Arrange:
58
63
  """
59
64
  Add rhs to the composition
60
65
 
@@ -65,13 +70,13 @@ class Compose:
65
70
  """
66
71
  from plotnine import ggplot
67
72
 
68
- if not isinstance(rhs, (ggplot, Compose)):
73
+ if not isinstance(rhs, (ggplot, Arrange)):
69
74
  cmp = deepcopy(self)
70
75
  cmp.last_plot = cmp.last_plot + rhs
71
76
  return cmp
72
77
  return self.__class__([*self, rhs])
73
78
 
74
- def __sub__(self, rhs: ggplot | Compose) -> Compose:
79
+ def __sub__(self, rhs: ggplot | Arrange) -> Arrange:
75
80
  """
76
81
  Add the rhs besides the composition
77
82
 
@@ -82,7 +87,7 @@ class Compose:
82
87
  """
83
88
  return self.__class__([self, rhs])
84
89
 
85
- def __and__(self, rhs: PlotAddable) -> Compose:
90
+ def __and__(self, rhs: PlotAddable) -> Arrange:
86
91
  """
87
92
  Add rhs to all plots in the composition
88
93
 
@@ -93,9 +98,9 @@ class Compose:
93
98
  """
94
99
  self = deepcopy(self)
95
100
 
96
- def add_other(op: Compose):
101
+ def add_other(op: Arrange):
97
102
  for item in op:
98
- if isinstance(item, Compose):
103
+ if isinstance(item, Arrange):
99
104
  add_other(item)
100
105
  else:
101
106
  item += rhs
@@ -103,7 +108,7 @@ class Compose:
103
108
  add_other(self)
104
109
  return self
105
110
 
106
- def __mul__(self, rhs: PlotAddable) -> Compose:
111
+ def __mul__(self, rhs: PlotAddable) -> Arrange:
107
112
  """
108
113
  Add rhs to the outermost nesting level of the composition
109
114
 
@@ -127,7 +132,7 @@ class Compose:
127
132
  """
128
133
  return len(self.operands)
129
134
 
130
- def __iter__(self) -> Iterator[ggplot | Compose]:
135
+ def __iter__(self) -> Iterator[ggplot | Arrange]:
131
136
  """
132
137
  Return an iterable of all the operands
133
138
  """
@@ -227,7 +232,7 @@ class Compose:
227
232
  from plotnine._mpl.gridspec import p9GridSpec
228
233
 
229
234
  def _make_plotspecs(
230
- cmp: Compose, parent_gridspec: p9GridSpec | None
235
+ cmp: Arrange, parent_gridspec: p9GridSpec | None
231
236
  ) -> Generator[plotspec]:
232
237
  """
233
238
  Return the plot specification for each subplot in the composition
@@ -289,7 +294,7 @@ class Compose:
289
294
 
290
295
  def draw(self, *, show: bool = False) -> Figure:
291
296
  """
292
- Render the composed plots
297
+ Render the arranged plots
293
298
 
294
299
  Parameters
295
300
  ----------
@@ -315,9 +320,15 @@ class Compose:
315
320
  )
316
321
  return figure
317
322
 
318
- def save(self, filename: str | Path | BytesIO, format: str | None = None):
323
+ def save(
324
+ self,
325
+ filename: str | Path | BytesIO,
326
+ format: str | None = None,
327
+ dpi: int | None = None,
328
+ **kwargs,
329
+ ):
319
330
  """
320
- Save a Compose object as an image file
331
+ Save a composition as an image file
321
332
 
322
333
  Parameters
323
334
  ----------
@@ -326,14 +337,25 @@ class Compose:
326
337
  format :
327
338
  Image format to use, automatically extract from
328
339
  file name extension.
329
- """
330
- figure = self.draw()
340
+ dpi :
341
+ DPI to use for raster graphics. If None, defaults to using
342
+ the `dpi` of theme to the first plot.
343
+ kwargs :
344
+ These are ignored. Here to "softly" match the API of
345
+ `ggplot.save()`.
346
+ """
347
+ from plotnine import theme
348
+
349
+ # To set the dpi, we only need to change the dpi of
350
+ # the last plot and theme gets added to the last plot
351
+ plot = (self + theme(dpi=dpi)) if dpi else self
352
+ figure = plot.draw()
331
353
  figure.savefig(filename, format=format)
332
354
 
333
355
 
334
356
  @dataclass
335
357
  class plot_composition_context:
336
- cmp: Compose
358
+ cmp: Arrange
337
359
  show: bool
338
360
 
339
361
  def __post_init__(self):
@@ -368,95 +390,3 @@ class plot_composition_context:
368
390
  plt.close(self.cmp.figure)
369
391
 
370
392
  self._rc_context.__exit__(exc_type, exc_value, exc_traceback)
371
-
372
-
373
- class OR(Compose):
374
- """
375
- Compose by adding a column
376
- """
377
-
378
- @property
379
- def nrow(self) -> int:
380
- return 1
381
-
382
- @property
383
- def ncol(self) -> int:
384
- return len(self)
385
-
386
- def __or__(self, rhs: ggplot | Compose) -> Compose:
387
- """
388
- Add rhs as a column
389
- """
390
- # This is adjacent or i.e. (OR | rhs) so we collapse the
391
- # operands into a single operation
392
- return OR([*self, rhs])
393
-
394
- def __truediv__(self, rhs: ggplot | Compose) -> Compose:
395
- """
396
- Add rhs as a row
397
- """
398
- return DIV([self, rhs])
399
-
400
-
401
- class DIV(Compose):
402
- """
403
- Compose by adding a row
404
- """
405
-
406
- @property
407
- def nrow(self) -> int:
408
- return len(self)
409
-
410
- @property
411
- def ncol(self) -> int:
412
- return 1
413
-
414
- def __truediv__(self, rhs: ggplot | Compose) -> Compose:
415
- """
416
- Add rhs as a row
417
- """
418
- # This is an adjacent div i.e. (DIV | rhs) so we collapse the
419
- # operands into a single operation
420
- return DIV([*self, rhs])
421
-
422
- def __or__(self, rhs: ggplot | Compose) -> Compose:
423
- """
424
- Add rhs as a column
425
- """
426
- return OR([self, rhs])
427
-
428
-
429
- class ADD(Compose):
430
- """
431
- Compose by adding
432
- """
433
-
434
- @property
435
- def nrow(self) -> int:
436
- from plotnine.facets.facet_wrap import wrap_dims
437
-
438
- return wrap_dims(len(self))[0]
439
-
440
- @property
441
- def ncol(self) -> int:
442
- from plotnine.facets.facet_wrap import wrap_dims
443
-
444
- return wrap_dims(len(self))[1]
445
-
446
- def __or__(self, rhs: ggplot | Compose) -> Compose:
447
- """
448
- Add rhs as a column
449
- """
450
- return OR([self, rhs])
451
-
452
- def __truediv__(self, rhs: ggplot | Compose) -> Compose:
453
- """
454
- Add rhs as a row
455
- """
456
- return DIV([self, rhs])
457
-
458
- def __sub__(self, rhs: ggplot | Compose) -> Compose:
459
- """
460
- Add rhs as a column
461
- """
462
- return OR([self, rhs])
@@ -0,0 +1,47 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from ._arrange import Arrange
6
+
7
+ if TYPE_CHECKING:
8
+ from plotnine.ggplot import ggplot
9
+
10
+
11
+ class Beside(Arrange):
12
+ """
13
+ Place plots or compositions side by side
14
+
15
+ **Usage**
16
+
17
+ plot | plot
18
+ plot | composition
19
+ composition | plot
20
+ composition | composition
21
+
22
+ Typically, you will use this class through the `|` operator.
23
+ """
24
+
25
+ @property
26
+ def nrow(self) -> int:
27
+ return 1
28
+
29
+ @property
30
+ def ncol(self) -> int:
31
+ return len(self)
32
+
33
+ def __or__(self, rhs: ggplot | Arrange) -> Arrange:
34
+ """
35
+ Add rhs as a column
36
+ """
37
+ # This is adjacent or i.e. (OR | rhs) so we collapse the
38
+ # operands into a single operation
39
+ return Beside([*self, rhs])
40
+
41
+ def __truediv__(self, rhs: ggplot | Arrange) -> Arrange:
42
+ """
43
+ Add rhs as a row
44
+ """
45
+ from ._stack import Stack
46
+
47
+ return Stack([self, rhs])
@@ -0,0 +1,49 @@
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
+
22
+ def __init__(
23
+ self,
24
+ fill: (
25
+ str
26
+ | tuple[float, float, float]
27
+ | tuple[float, float, float, float]
28
+ | None
29
+ ) = None,
30
+ ):
31
+ super().__init__()
32
+ self.theme = theme_void()
33
+ if fill:
34
+ self.theme += theme(plot_background=element_rect(fill=fill))
35
+
36
+ def __add__(self, rhs) -> plot_spacer:
37
+ """
38
+ Add to spacer
39
+
40
+ All added objects are no ops except the `plot_background` in
41
+ in a theme.
42
+ """
43
+ self = deepcopy(self)
44
+ if isinstance(rhs, theme):
45
+ fill = rhs.getp(("plot_background", "facecolor"))
46
+ self.theme += theme(
47
+ plot_background=element_rect(fill=fill),
48
+ )
49
+ return self
@@ -0,0 +1,47 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from ._arrange import Arrange
6
+
7
+ if TYPE_CHECKING:
8
+ from plotnine.ggplot import ggplot
9
+
10
+
11
+ class Stack(Arrange):
12
+ """
13
+ Place plots or compositions on top of each other
14
+
15
+ **Usage**
16
+
17
+ plot / plot
18
+ plot / composition
19
+ composition / plot
20
+ composition / composition
21
+
22
+ Typically, you will use this class through the `/` operator.
23
+ """
24
+
25
+ @property
26
+ def nrow(self) -> int:
27
+ return len(self)
28
+
29
+ @property
30
+ def ncol(self) -> int:
31
+ return 1
32
+
33
+ def __truediv__(self, rhs: ggplot | Arrange) -> Arrange:
34
+ """
35
+ Add rhs as a row
36
+ """
37
+ # This is an adjacent div i.e. (DIV | rhs) so we collapse the
38
+ # operands into a single operation
39
+ return Stack([*self, rhs])
40
+
41
+ def __or__(self, rhs: ggplot | Arrange) -> Arrange:
42
+ """
43
+ Add rhs as a column
44
+ """
45
+ from ._beside import Beside
46
+
47
+ return Beside([self, rhs])