plotnine 0.16.0a2__tar.gz → 0.16.0a3__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 (711) hide show
  1. {plotnine-0.16.0a2/plotnine.egg-info → plotnine-0.16.0a3}/PKG-INFO +2 -2
  2. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/_quartodoc.yml +4 -0
  3. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/changelog.qmd +31 -0
  4. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/layout_manager/_composition_layout_items.py +43 -0
  5. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/layout_manager/_composition_side_space.py +33 -0
  6. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/layout_manager/_plot_layout_items.py +43 -0
  7. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/layout_manager/_plot_side_space.py +20 -0
  8. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_utils/context.py +12 -8
  9. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/composition/_compose.py +21 -1
  10. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/composition/_plot_annotation.py +6 -1
  11. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/ggplot.py +24 -1
  12. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/guides/guide_legend.py +17 -3
  13. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/iapi.py +3 -2
  14. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/labels.py +7 -0
  15. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/targets.py +4 -0
  16. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme.py +4 -0
  17. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_gray.py +10 -0
  18. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_matplotlib.py +9 -0
  19. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_seaborn.py +10 -0
  20. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_void.py +8 -0
  21. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/themeable.py +91 -2
  22. {plotnine-0.16.0a2 → plotnine-0.16.0a3/plotnine.egg-info}/PKG-INFO +2 -2
  23. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine.egg-info/SOURCES.txt +5 -0
  24. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine.egg-info/requires.txt +1 -1
  25. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/pyproject.toml +1 -1
  26. plotnine-0.16.0a3/tests/baseline_images/test_guide_internals/guide_legend_missing_value_for_shapes.png +0 -0
  27. plotnine-0.16.0a3/tests/baseline_images/test_layout/plot_footer.png +0 -0
  28. plotnine-0.16.0a3/tests/baseline_images/test_layout/plot_footer_background.png +0 -0
  29. plotnine-0.16.0a3/tests/baseline_images/test_plot_composition/footer.png +0 -0
  30. plotnine-0.16.0a3/tests/baseline_images/test_plot_composition/footers.png +0 -0
  31. plotnine-0.16.0a3/tests/baseline_images/test_scale_internals/missing_data_discrete_position_scale.png +0 -0
  32. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_guide_internals.py +6 -0
  33. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_layout.py +16 -0
  34. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_plot_composition.py +38 -0
  35. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_scale_internals.py +6 -3
  36. plotnine-0.16.0a2/tests/baseline_images/test_scale_internals/missing_data_discrete_position_scale.png +0 -0
  37. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.gitattributes +0 -0
  38. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.github/DISCUSSION_TEMPLATE/2024-plotnine-contest.yml +0 -0
  39. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.github/DISCUSSION_TEMPLATE/2025-plotnine-contest.yml +0 -0
  40. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.github/utils/_repo.py +0 -0
  41. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.github/utils/please.py +0 -0
  42. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.github/workflows/documentation.yml +0 -0
  43. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.github/workflows/release.yml +0 -0
  44. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.github/workflows/testing.yml +0 -0
  45. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.github/workflows/weekly.yml +0 -0
  46. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.gitignore +0 -0
  47. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.pre-commit-config.yaml +0 -0
  48. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/.readthedocs.yaml +0 -0
  49. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/CITATION.bib +0 -0
  50. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/LICENSE +0 -0
  51. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/Makefile +0 -0
  52. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/README.md +0 -0
  53. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/code-of-conduct.md +0 -0
  54. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/codecov.yml +0 -0
  55. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/.gitignore +0 -0
  56. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/Makefile +0 -0
  57. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/_config.py +0 -0
  58. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/_quarto.yml +0 -0
  59. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/_renderer.py +0 -0
  60. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/favicon-16x16.png +0 -0
  61. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/favicon-32x32.png +0 -0
  62. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/logo-512.png +0 -0
  63. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/logo.png +0 -0
  64. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/readme-image-1.png +0 -0
  65. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/readme-image-2.png +0 -0
  66. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/readme-image-3.png +0 -0
  67. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/readme-image-4.png +0 -0
  68. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/readme-image-5.png +0 -0
  69. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/readme-image-5alt.png +0 -0
  70. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/images/readme_images.py +0 -0
  71. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/doc/plotnine.scss +0 -0
  72. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/licences/SEABORN_LICENSE +0 -0
  73. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/__init__.py +0 -0
  74. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/__init__.py +0 -0
  75. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/gridspec.py +0 -0
  76. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/layout_manager/__init__.py +0 -0
  77. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/layout_manager/_engine.py +0 -0
  78. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/layout_manager/_grid.py +0 -0
  79. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/layout_manager/_layout_tree.py +0 -0
  80. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/layout_manager/_side_space.py +0 -0
  81. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/offsetbox.py +0 -0
  82. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/patches.py +0 -0
  83. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/text.py +0 -0
  84. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/ticker.py +0 -0
  85. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/transforms.py +0 -0
  86. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_mpl/utils.py +0 -0
  87. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_utils/__init__.py +0 -0
  88. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_utils/dataclasses.py +0 -0
  89. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_utils/dev.py +0 -0
  90. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_utils/ipython.py +0 -0
  91. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_utils/quarto.py +0 -0
  92. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_utils/registry.py +0 -0
  93. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/_utils/yippie.py +0 -0
  94. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/animation.py +0 -0
  95. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/composition/__init__.py +0 -0
  96. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/composition/_beside.py +0 -0
  97. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/composition/_plot_layout.py +0 -0
  98. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/composition/_plot_spacer.py +0 -0
  99. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/composition/_stack.py +0 -0
  100. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/composition/_types.py +0 -0
  101. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/composition/_wrap.py +0 -0
  102. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/coords/__init__.py +0 -0
  103. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/coords/coord.py +0 -0
  104. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/coords/coord_cartesian.py +0 -0
  105. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/coords/coord_fixed.py +0 -0
  106. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/coords/coord_flip.py +0 -0
  107. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/coords/coord_trans.py +0 -0
  108. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/__init__.py +0 -0
  109. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/anscombe-quartet.csv +0 -0
  110. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/diamonds.csv +0 -0
  111. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/economics.csv +0 -0
  112. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/economics_long.csv +0 -0
  113. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/faithful.csv +0 -0
  114. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/faithfuld.csv +0 -0
  115. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/huron.csv +0 -0
  116. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/luv_colours.csv +0 -0
  117. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/meat.csv +0 -0
  118. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/midwest.csv +0 -0
  119. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/mpg.csv +0 -0
  120. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/msleep.csv +0 -0
  121. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/mtcars.csv +0 -0
  122. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/pageviews.csv +0 -0
  123. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/penguins.csv +0 -0
  124. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/presidential.csv +0 -0
  125. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/seals.csv +0 -0
  126. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/data/txhousing.csv +0 -0
  127. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/doctools.py +0 -0
  128. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/exceptions.py +0 -0
  129. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/facets/__init__.py +0 -0
  130. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/facets/facet.py +0 -0
  131. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/facets/facet_grid.py +0 -0
  132. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/facets/facet_null.py +0 -0
  133. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/facets/facet_wrap.py +0 -0
  134. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/facets/labelling.py +0 -0
  135. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/facets/layout.py +0 -0
  136. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/facets/strips.py +0 -0
  137. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/__init__.py +0 -0
  138. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/annotate.py +0 -0
  139. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/annotation_logticks.py +0 -0
  140. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/annotation_stripes.py +0 -0
  141. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom.py +0 -0
  142. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_abline.py +0 -0
  143. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_area.py +0 -0
  144. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_bar.py +0 -0
  145. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_bin_2d.py +0 -0
  146. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_blank.py +0 -0
  147. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_boxplot.py +0 -0
  148. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_col.py +0 -0
  149. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_count.py +0 -0
  150. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_crossbar.py +0 -0
  151. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_density.py +0 -0
  152. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_density_2d.py +0 -0
  153. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_dotplot.py +0 -0
  154. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_errorbar.py +0 -0
  155. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_errorbarh.py +0 -0
  156. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_freqpoly.py +0 -0
  157. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_histogram.py +0 -0
  158. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_hline.py +0 -0
  159. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_jitter.py +0 -0
  160. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_label.py +0 -0
  161. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_line.py +0 -0
  162. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_linerange.py +0 -0
  163. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_map.py +0 -0
  164. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_path.py +0 -0
  165. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_point.py +0 -0
  166. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_pointdensity.py +0 -0
  167. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_pointrange.py +0 -0
  168. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_polygon.py +0 -0
  169. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_qq.py +0 -0
  170. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_qq_line.py +0 -0
  171. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_quantile.py +0 -0
  172. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_raster.py +0 -0
  173. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_rect.py +0 -0
  174. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_ribbon.py +0 -0
  175. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_rug.py +0 -0
  176. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_segment.py +0 -0
  177. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_sina.py +0 -0
  178. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_smooth.py +0 -0
  179. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_spoke.py +0 -0
  180. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_step.py +0 -0
  181. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_text.py +0 -0
  182. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_tile.py +0 -0
  183. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_violin.py +0 -0
  184. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/geoms/geom_vline.py +0 -0
  185. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/guides/__init__.py +0 -0
  186. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/guides/guide.py +0 -0
  187. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/guides/guide_axis.py +0 -0
  188. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/guides/guide_colorbar.py +0 -0
  189. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/guides/guides.py +0 -0
  190. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/helpers.py +0 -0
  191. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/layer.py +0 -0
  192. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/mapping/__init__.py +0 -0
  193. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/mapping/_atomic.py +0 -0
  194. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/mapping/_env.py +0 -0
  195. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/mapping/_eval_environment.py +0 -0
  196. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/mapping/aes.py +0 -0
  197. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/mapping/evaluation.py +0 -0
  198. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/options.py +0 -0
  199. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/__init__.py +0 -0
  200. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/position.py +0 -0
  201. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/position_dodge.py +0 -0
  202. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/position_dodge2.py +0 -0
  203. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/position_fill.py +0 -0
  204. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/position_identity.py +0 -0
  205. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/position_jitter.py +0 -0
  206. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/position_jitterdodge.py +0 -0
  207. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/position_nudge.py +0 -0
  208. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/positions/position_stack.py +0 -0
  209. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/py.typed +0 -0
  210. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/qplot.py +0 -0
  211. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/__init__.py +0 -0
  212. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/_expand.py +0 -0
  213. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/_runtime_typing.py +0 -0
  214. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/limits.py +0 -0
  215. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/range.py +0 -0
  216. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale.py +0 -0
  217. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_alpha.py +0 -0
  218. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_color.py +0 -0
  219. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_continuous.py +0 -0
  220. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_datetime.py +0 -0
  221. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_discrete.py +0 -0
  222. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_identity.py +0 -0
  223. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_linetype.py +0 -0
  224. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_manual.py +0 -0
  225. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_shape.py +0 -0
  226. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_size.py +0 -0
  227. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_stroke.py +0 -0
  228. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scale_xy.py +0 -0
  229. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/scales/scales.py +0 -0
  230. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/__init__.py +0 -0
  231. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/binning.py +0 -0
  232. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/density.py +0 -0
  233. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/distributions.py +0 -0
  234. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/smoothers.py +0 -0
  235. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat.py +0 -0
  236. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_bin.py +0 -0
  237. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_bin_2d.py +0 -0
  238. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_bindot.py +0 -0
  239. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_boxplot.py +0 -0
  240. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_count.py +0 -0
  241. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_density.py +0 -0
  242. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_density_2d.py +0 -0
  243. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_ecdf.py +0 -0
  244. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_ellipse.py +0 -0
  245. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_function.py +0 -0
  246. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_hull.py +0 -0
  247. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_identity.py +0 -0
  248. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_pointdensity.py +0 -0
  249. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_qq.py +0 -0
  250. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_qq_line.py +0 -0
  251. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_quantile.py +0 -0
  252. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_sina.py +0 -0
  253. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_smooth.py +0 -0
  254. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_sum.py +0 -0
  255. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_summary.py +0 -0
  256. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_summary_bin.py +0 -0
  257. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_unique.py +0 -0
  258. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/stats/stat_ydensity.py +0 -0
  259. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/__init__.py +0 -0
  260. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/elements/__init__.py +0 -0
  261. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/elements/element_base.py +0 -0
  262. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/elements/element_blank.py +0 -0
  263. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/elements/element_line.py +0 -0
  264. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/elements/element_rect.py +0 -0
  265. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/elements/element_text.py +0 -0
  266. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/elements/margin.py +0 -0
  267. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/seaborn_rcmod.py +0 -0
  268. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_538.py +0 -0
  269. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_bw.py +0 -0
  270. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_classic.py +0 -0
  271. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_dark.py +0 -0
  272. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_light.py +0 -0
  273. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_linedraw.py +0 -0
  274. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_minimal.py +0 -0
  275. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_tufte.py +0 -0
  276. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/themes/theme_xkcd.py +0 -0
  277. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/typing.py +0 -0
  278. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine/watermark.py +0 -0
  279. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine.egg-info/dependency_links.txt +0 -0
  280. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/plotnine.egg-info/top_level.txt +0 -0
  281. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/requirements/doc.txt +0 -0
  282. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/setup.cfg +0 -0
  283. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_aes/geom_crossbar.png +0 -0
  284. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_aes/irregular_shapes.png +0 -0
  285. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_aes/reorder.png +0 -0
  286. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_aes/reorder_index.png +0 -0
  287. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_aes/stat_bin_2d.png +0 -0
  288. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_aes/stat_ecdf.png +0 -0
  289. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_aes/test_stat_function.png +0 -0
  290. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotate/annotate_faceting.png +0 -0
  291. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotate/multiple_annotation_geoms.png +0 -0
  292. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_logticks/annotation_logticks.png +0 -0
  293. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_logticks/annotation_logticks_base_5.png +0 -0
  294. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_logticks/annotation_logticks_base_8.png +0 -0
  295. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_logticks/annotation_logticks_coord_flip.png +0 -0
  296. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_logticks/annotation_logticks_coord_flip_discrete.png +0 -0
  297. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_logticks/annotation_logticks_coord_flip_discrete_bottom.png +0 -0
  298. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_logticks/annotation_logticks_faceting.png +0 -0
  299. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_stripes/annotation_stripes.png +0 -0
  300. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_stripes/annotation_stripes_continuous_scale.png +0 -0
  301. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_stripes/annotation_stripes_coord_flip.png +0 -0
  302. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_stripes/annotation_stripes_faceting.png +0 -0
  303. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_stripes/annotation_stripes_fill_direction_extend.png +0 -0
  304. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_stripes/annotation_stripes_fill_range.png +0 -0
  305. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_stripes/annotation_stripes_fill_range_cycle.png +0 -0
  306. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_annotation_stripes/annotation_stripes_single_stripe.png +0 -0
  307. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_coords/coord_fixed.png +0 -0
  308. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_coords/coord_flip.png +0 -0
  309. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_coords/coord_trans.png +0 -0
  310. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_coords/coord_trans_backtransform.png +0 -0
  311. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_coords/coord_trans_reverse.png +0 -0
  312. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_coords/datetime_scale_limits.png +0 -0
  313. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/aslabeller_dict_0tag.png +0 -0
  314. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/aslabeller_func_hashtagit.png +0 -0
  315. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/label_both.png +0 -0
  316. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/label_context.png +0 -0
  317. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/label_context_wrap2vars.png +0 -0
  318. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/label_value.png +0 -0
  319. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/labeller_cols_both_grid.png +0 -0
  320. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/labeller_cols_both_wrap.png +0 -0
  321. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/labeller_towords.png +0 -0
  322. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facet_labelling/uneven_num_of_lines.png +0 -0
  323. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/array_mapping_and_evaluation.png +0 -0
  324. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/dir_v_ncol.png +0 -0
  325. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_drop_false.png +0 -0
  326. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_expression.png +0 -0
  327. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_formula_only_cols.png +0 -0
  328. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_formula_only_rows.png +0 -0
  329. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_margins.png +0 -0
  330. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_one_by_one_var.png +0 -0
  331. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_scales_free_x.png +0 -0
  332. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_scales_free_y.png +0 -0
  333. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_space_free.png +0 -0
  334. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_grid_space_ratios.png +0 -0
  335. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_wrap_direction_v.png +0 -0
  336. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_wrap_expression.png +0 -0
  337. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_wrap_label_both.png +0 -0
  338. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_wrap_not_as_table.png +0 -0
  339. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_wrap_not_as_table_direction_v.png +0 -0
  340. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_wrap_one_var.png +0 -0
  341. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/facet_wrap_two_vars.png +0 -0
  342. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/manual_mapping_with_lists.png +0 -0
  343. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/non_mapped_facetting.png +0 -0
  344. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_facets/variable_and_annotate.png +0 -0
  345. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_abline/aes_inheritance.png +0 -0
  346. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_abline/aesthetics.png +0 -0
  347. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_bar_col_histogram/bar-count.png +0 -0
  348. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_bar_col_histogram/col.png +0 -0
  349. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_bar_col_histogram/col_just.png +0 -0
  350. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_bar_col_histogram/histogram-count.png +0 -0
  351. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_bar_col_histogram/histogram_weights.png +0 -0
  352. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_bar_col_histogram/stat-count-float.png +0 -0
  353. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_bar_col_histogram/stat-count-int.png +0 -0
  354. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_bin_2d/drop_false.png +0 -0
  355. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_bin_2d/drop_true.png +0 -0
  356. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_blank/blank.png +0 -0
  357. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_boxplot/aesthetics+coord_flip.png +0 -0
  358. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_boxplot/aesthetics.png +0 -0
  359. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_boxplot/no_outliers.png +0 -0
  360. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_boxplot/params.png +0 -0
  361. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_boxplot/position_nudge.png +0 -0
  362. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_boxplot/weight.png +0 -0
  363. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_count/continuous_x_y.png +0 -0
  364. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_count/discrete_x.png +0 -0
  365. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_count/discrete_y.png +0 -0
  366. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_crossbar/aesthetics.png +0 -0
  367. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_density/bounds.png +0 -0
  368. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_density/few_datapoints.png +0 -0
  369. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_density/gaussian-trimmed.png +0 -0
  370. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_density/gaussian.png +0 -0
  371. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_density/gaussian_weighted.png +0 -0
  372. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_density/triangular.png +0 -0
  373. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_density_2d/contours.png +0 -0
  374. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_density_2d/points.png +0 -0
  375. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_density_2d/polygon.png +0 -0
  376. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/binaxis_y.png +0 -0
  377. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/dotdensity.png +0 -0
  378. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/group_basic.png +0 -0
  379. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/group_stackgroups.png +0 -0
  380. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/group_stackgroups_binaxis_y.png +0 -0
  381. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/histodot.png +0 -0
  382. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/stackdir_center.png +0 -0
  383. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/stackdir_centerwhole.png +0 -0
  384. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/stackdir_down.png +0 -0
  385. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_dotplot/stackratio.png +0 -0
  386. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_errorbar_errorbarh/errorbar_aesthetics.png +0 -0
  387. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_errorbar_errorbarh/errorbarh_aesthetics.png +0 -0
  388. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_freqpoly/midpoint.png +0 -0
  389. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_hline/aesthetics.png +0 -0
  390. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_linerange_pointrange/linerange_aesthetics.png +0 -0
  391. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_linerange_pointrange/pointrange_aesthetics.png +0 -0
  392. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_map/facet_wrap.png +0 -0
  393. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_map/geometries.png +0 -0
  394. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_map/multipoint.png +0 -0
  395. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_map/multipolygon.png +0 -0
  396. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_path_line_step/aesthetics.png +0 -0
  397. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_path_line_step/arrow.png +0 -0
  398. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_path_line_step/arrow_facets.png +0 -0
  399. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_path_line_step/missing_values.png +0 -0
  400. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_path_line_step/no_missing_values.png +0 -0
  401. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_path_line_step/path_line_step.png +0 -0
  402. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_path_line_step/step.png +0 -0
  403. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_path_line_step/step_mid.png +0 -0
  404. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_point/aesthetics.png +0 -0
  405. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_point/color_only_mapping.png +0 -0
  406. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_point/custom_shapes.png +0 -0
  407. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_point/legend_transparency.png +0 -0
  408. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_point/no_fill.png +0 -0
  409. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_point/no_mapping.png +0 -0
  410. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_pointdensity/contours.png +0 -0
  411. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_pointdensity/points.png +0 -0
  412. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_polygon/aesthetics.png +0 -0
  413. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_polygon/no_fill.png +0 -0
  414. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_qq_qq_line/normal.png +0 -0
  415. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_qq_qq_line/normal_with_line.png +0 -0
  416. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_quantile/lines.png +0 -0
  417. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_raster/gap_no_interpolation.png +0 -0
  418. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_raster/gap_with_interpolation.png +0 -0
  419. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_raster/rectangle.png +0 -0
  420. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_raster/square.png +0 -0
  421. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_rect_tile/coord-trans-groups.png +0 -0
  422. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_rect_tile/coord-trans.png +0 -0
  423. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_rect_tile/infinite-rects.png +0 -0
  424. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_rect_tile/rect-aesthetics.png +0 -0
  425. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_rect_tile/rect-nofill.png +0 -0
  426. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_rect_tile/tile-aesthetics.png +0 -0
  427. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_ribbon_area/area_aesthetics.png +0 -0
  428. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_ribbon_area/ribbon_aesthetics.png +0 -0
  429. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_ribbon_area/ribbon_coord_flip.png +0 -0
  430. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_ribbon_area/ribbon_facetting.png +0 -0
  431. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_ribbon_area/ribbon_outline_type.png +0 -0
  432. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_ribbon_area/ribbon_outline_type_coord_flip.png +0 -0
  433. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_ribbon_area/ribbon_where.png +0 -0
  434. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_rug/aesthetics.png +0 -0
  435. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_rug/coord_flip.png +0 -0
  436. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_segment/aesthetics.png +0 -0
  437. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_segment/arrow.png +0 -0
  438. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_segment/arrow_coord_flip.png +0 -0
  439. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_sina/method_counts.png +0 -0
  440. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_sina/scale_area+coord_flip.png +0 -0
  441. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_sina/scale_area.png +0 -0
  442. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_sina/scale_count.png +0 -0
  443. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_sina/style.png +0 -0
  444. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/continuous_x.png +0 -0
  445. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/continuous_x_fullrange.png +0 -0
  446. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/coord_trans_se_false.png +0 -0
  447. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/discrete_x.png +0 -0
  448. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/discrete_x_fullrange.png +0 -0
  449. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/glm_formula.png +0 -0
  450. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/gls_formula.png +0 -0
  451. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/init_and_fit_kwargs.png +0 -0
  452. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/legend_fill_ratio.png +0 -0
  453. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/linear_smooth.png +0 -0
  454. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/linear_smooth_no_ci.png +0 -0
  455. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/lm_formula.png +0 -0
  456. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/lm_formula_weights.png +0 -0
  457. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/non_linear_smooth.png +0 -0
  458. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/non_linear_smooth_no_ci.png +0 -0
  459. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/rlm_formula.png +0 -0
  460. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_smooth/sorts_by_x.png +0 -0
  461. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_spoke/aesthetics.png +0 -0
  462. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_spoke/test_unmapped_angle.png +0 -0
  463. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_text_label/adjust_label.png +0 -0
  464. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_text_label/adjust_text.png +0 -0
  465. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_text_label/adjust_text_default_color.png +0 -0
  466. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_text_label/format_missing_values.png +0 -0
  467. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_text_label/label_aesthetics.png +0 -0
  468. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_text_label/text_aesthetics.png +0 -0
  469. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_violin/aesthetics+coord_flip.png +0 -0
  470. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_violin/aesthetics.png +0 -0
  471. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_violin/no_trim.png +0 -0
  472. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_violin/overlap.png +0 -0
  473. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_violin/quantiles_width_dodge.png +0 -0
  474. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_violin/scale.png +0 -0
  475. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_violin/scales_free.png +0 -0
  476. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_violin/style.png +0 -0
  477. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_violin/style_alternating.png +0 -0
  478. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_geom_vline/aesthetics.png +0 -0
  479. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_ggplot_internals/after_scale_mapping.png +0 -0
  480. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_ggplot_internals/to_pandas.png +0 -0
  481. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_guide_internals/guide_legend_after_scale.png +0 -0
  482. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layers/inserting_layers.png +0 -0
  483. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/axis_text_justification.png +0 -0
  484. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/axis_title_x_justification.png +0 -0
  485. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/axis_title_y_justification.png +0 -0
  486. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/colorbar_frame.png +0 -0
  487. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/default.png +0 -0
  488. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/default_tag_location.png +0 -0
  489. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/different_colorbar_themes.png +0 -0
  490. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/facet_grid.png +0 -0
  491. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/facet_wrap.png +0 -0
  492. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/facet_wrap_scales_free.png +0 -0
  493. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/inside_legend_90pct_top_right.png +0 -0
  494. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/inside_legend_left.png +0 -0
  495. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/inside_legend_top.png +0 -0
  496. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/inside_legend_top_right.png +0 -0
  497. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/justification_with_blank_title_and_text.png +0 -0
  498. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/legend_at_the_bottom.png +0 -0
  499. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/legend_at_top.png +0 -0
  500. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/legend_on_the_left.png +0 -0
  501. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/legends_in_different_positions.png +0 -0
  502. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/margin_bottom.png +0 -0
  503. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/outside_legend_bottom_left.png +0 -0
  504. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/outside_legend_left_top.png +0 -0
  505. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/outside_legend_right_bottom.png +0 -0
  506. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/outside_legend_top_right.png +0 -0
  507. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/panel_bottomleft.png +0 -0
  508. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/panel_topleft_margin_in_fig.png +0 -0
  509. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/panel_topleft_margin_in_pt.png +0 -0
  510. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/panel_topleft_margin_in_pt_ar1.png +0 -0
  511. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/panel_xycoords.png +0 -0
  512. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/plot_margin_aspect_ratio.png +0 -0
  513. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/plot_margin_protruding_axis_text.png +0 -0
  514. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/plot_title_justification.png +0 -0
  515. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/plot_titles_and_caption_positioning.png +0 -0
  516. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/plot_topright.png +0 -0
  517. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/plot_topright_margin_in_fig.png +0 -0
  518. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/plot_topright_margin_in_pt.png +0 -0
  519. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/plot_xycoords.png +0 -0
  520. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_layout/turn_off_guide.png +0 -0
  521. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/add_into_ncol.png +0 -0
  522. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/add_into_stack.png +0 -0
  523. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/and_operator.png +0 -0
  524. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/basic_horizontal_align_resize.png +0 -0
  525. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/basic_vertical_align_resize.png +0 -0
  526. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/complex_composition.png +0 -0
  527. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/facets.png +0 -0
  528. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/horizontal_tag_align.png +0 -0
  529. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/minus.png +0 -0
  530. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/mul_operator.png +0 -0
  531. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/nested_horizontal_align_resize.png +0 -0
  532. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/nested_vertical_align_resize.png +0 -0
  533. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_annotation_addition.png +0 -0
  534. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_annotation_position_panel.png +0 -0
  535. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_annotation_position_plot.png +0 -0
  536. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_layout_association.png +0 -0
  537. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_layout_byrow.png +0 -0
  538. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_layout_extra_col_width.png +0 -0
  539. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_layout_extra_cols.png +0 -0
  540. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_layout_extra_row_width.png +0 -0
  541. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_layout_extra_rows.png +0 -0
  542. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_layout_heights.png +0 -0
  543. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_layout_nested_resize.png +0 -0
  544. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plot_layout_widths.png +0 -0
  545. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/plus_operator.png +0 -0
  546. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/test_nested_horizontal_align_1.png +0 -0
  547. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/test_nested_horizontal_align_2.png +0 -0
  548. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/test_nested_vertical_align_1.png +0 -0
  549. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/test_nested_vertical_align_2.png +0 -0
  550. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/vertical_tag_align.png +0 -0
  551. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_plot_composition/wrap_complicated.png +0 -0
  552. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/dodge.png +0 -0
  553. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/dodge2.png +0 -0
  554. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/dodge2_preserve_single_interval.png +0 -0
  555. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/dodge2_varwidth.png +0 -0
  556. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/dodge_preserve_single.png +0 -0
  557. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/dodge_preserve_single_text.png +0 -0
  558. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/dodge_segment.png +0 -0
  559. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/fill.png +0 -0
  560. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/jitter.png +0 -0
  561. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/jitterdodge.png +0 -0
  562. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/nudge.png +0 -0
  563. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/stack-negative.png +0 -0
  564. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/stack-non-linear-scale.png +0 -0
  565. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_position/stack.png +0 -0
  566. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/arrays.png +0 -0
  567. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/multiple_geoms.png +0 -0
  568. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/onlyx.png +0 -0
  569. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/onlyy.png +0 -0
  570. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/range.png +0 -0
  571. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/sample.png +0 -0
  572. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/scalars.png +0 -0
  573. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/series_labelling.png +0 -0
  574. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/string-arrays.png +0 -0
  575. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/xlim.png +0 -0
  576. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_qplot/ylim.png +0 -0
  577. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/bool_mapping.png +0 -0
  578. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/breaks_and_labels_outside_of_limits.png +0 -0
  579. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/datetime_scale_expansion.png +0 -0
  580. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/datetime_scale_limits.png +0 -0
  581. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/discrete_xy_scale_drop_limits.png +0 -0
  582. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/expand_limits.png +0 -0
  583. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/legend_ordering_added_scales.png +0 -0
  584. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/legend_ordering_global_aesthetics_1.png +0 -0
  585. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/legend_ordering_global_aesthetics_2.png +0 -0
  586. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/legend_ordering_local_aesthetics_1.png +0 -0
  587. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/legend_ordering_local_aesthetics_2.png +0 -0
  588. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/legend_ordering_mixed_scope_aesthetics.png +0 -0
  589. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/missing_data_discrete_scale.png +0 -0
  590. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/missing_manual_dict_aesthetic.png +0 -0
  591. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/multiple_aesthetics.png +0 -0
  592. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/ordinal_scale.png +0 -0
  593. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/test_legend_ordering_with_identity_scale.png +0 -0
  594. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/transform_aes_defaults_and_params.png +0 -0
  595. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_internals/transform_datetime_aes_param.png +0 -0
  596. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_labelling/caption_complex.png +0 -0
  597. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_labelling/caption_simple.png +0 -0
  598. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_labelling/labelling_with_colour.png +0 -0
  599. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_linetype/scale_linetype_manual_strings.png +0 -0
  600. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_linetype/scale_linetype_manual_tuples.png +0 -0
  601. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_scale_symlog/scale_y_symlog.png +0 -0
  602. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_ecdf/computed_y_column.png +0 -0
  603. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_ecdf/ecdf.png +0 -0
  604. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_ecdf/ecdf_no_pad.png +0 -0
  605. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_ellipse/ellipse.png +0 -0
  606. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_function/args.png +0 -0
  607. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_function/limits.png +0 -0
  608. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_hull/hull.png +0 -0
  609. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary/fun_args.png +0 -0
  610. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary/mean_cl_boot.png +0 -0
  611. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary/mean_cl_normal.png +0 -0
  612. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary/mean_sdl.png +0 -0
  613. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary/mean_se.png +0 -0
  614. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary/median_hilow.png +0 -0
  615. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary/summary_functions.png +0 -0
  616. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary_bin/continuous_x.png +0 -0
  617. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary_bin/discrete_x.png +0 -0
  618. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_stat_summary_bin/setting_binwidth.png +0 -0
  619. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/axis_ticks_and_length.png +0 -0
  620. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/element_text_with_sequence_values.png +0 -0
  621. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/guide_colorbar_text_sequence.png +0 -0
  622. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/no_ticks.png +0 -0
  623. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/override_axis_text.png +0 -0
  624. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/test_guide_colorbar_sequence_ha_va.png +0 -0
  625. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_538.png +0 -0
  626. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_bw.png +0 -0
  627. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_classic.png +0 -0
  628. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_dark.png +0 -0
  629. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_gray.png +0 -0
  630. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_light.png +0 -0
  631. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_linedraw.png +0 -0
  632. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_matplotlib.png +0 -0
  633. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_minimal.png +0 -0
  634. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_seaborn.png +0 -0
  635. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_tufte.png +0 -0
  636. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_void.png +0 -0
  637. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_xkcd.png +0 -0
  638. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_theme/theme_xkcd_ci.png +0 -0
  639. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/baseline_images/test_watermark/watermark.png +0 -0
  640. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/conftest.py +0 -0
  641. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/images/plotnine-watermark.png +0 -0
  642. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_aes.py +0 -0
  643. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_animation.py +0 -0
  644. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_annotate.py +0 -0
  645. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_annotation_logticks.py +0 -0
  646. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_annotation_stripes.py +0 -0
  647. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_binning.py +0 -0
  648. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_coords.py +0 -0
  649. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_doctools.py +0 -0
  650. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_facet_labelling.py +0 -0
  651. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_facets.py +0 -0
  652. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom.py +0 -0
  653. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_abline.py +0 -0
  654. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_bar_col_histogram.py +0 -0
  655. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_bin_2d.py +0 -0
  656. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_blank.py +0 -0
  657. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_boxplot.py +0 -0
  658. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_count.py +0 -0
  659. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_crossbar.py +0 -0
  660. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_density.py +0 -0
  661. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_density_2d.py +0 -0
  662. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_dotplot.py +0 -0
  663. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_errorbar_errorbarh.py +0 -0
  664. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_freqpoly.py +0 -0
  665. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_hline.py +0 -0
  666. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_linerange_pointrange.py +0 -0
  667. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_map.py +0 -0
  668. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_path_line_step.py +0 -0
  669. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_point.py +0 -0
  670. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_pointdensity.py +0 -0
  671. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_polygon.py +0 -0
  672. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_qq_qq_line.py +0 -0
  673. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_quantile.py +0 -0
  674. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_raster.py +0 -0
  675. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_rect_tile.py +0 -0
  676. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_ribbon_area.py +0 -0
  677. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_rug.py +0 -0
  678. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_segment.py +0 -0
  679. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_sina.py +0 -0
  680. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_smooth.py +0 -0
  681. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_spoke.py +0 -0
  682. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_text_label.py +0 -0
  683. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_violin.py +0 -0
  684. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_geom_vline.py +0 -0
  685. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_ggplot_internals.py +0 -0
  686. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_ggsave.py +0 -0
  687. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_helpers.py +0 -0
  688. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_layers.py +0 -0
  689. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_lint_and_format.py +0 -0
  690. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_position.py +0 -0
  691. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_qplot.py +0 -0
  692. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_save_as_pdf_pages.py +0 -0
  693. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_scale_labelling.py +0 -0
  694. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_scale_linetype.py +0 -0
  695. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_scale_symlog.py +0 -0
  696. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_stat.py +0 -0
  697. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_stat_calculate_methods.py +0 -0
  698. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_stat_ecdf.py +0 -0
  699. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_stat_ellipse.py +0 -0
  700. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_stat_function.py +0 -0
  701. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_stat_hull.py +0 -0
  702. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_stat_summary.py +0 -0
  703. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_stat_summary_bin.py +0 -0
  704. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_theme.py +0 -0
  705. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_utils.py +0 -0
  706. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tests/test_watermark.py +0 -0
  707. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tools/release-checklist-tpl.md +0 -0
  708. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tools/release-checklist.py +0 -0
  709. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tools/term.py +0 -0
  710. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tools/update_baseline_images.py +0 -0
  711. {plotnine-0.16.0a2 → plotnine-0.16.0a3}/tools/visualize_tests.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: plotnine
3
- Version: 0.16.0a2
3
+ Version: 0.16.0a3
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)
@@ -49,7 +49,7 @@ Requires-Dist: pandas>=2.2.0
49
49
  Requires-Dist: mizani~=0.14.0
50
50
  Requires-Dist: numpy>=1.23.5
51
51
  Requires-Dist: scipy>=1.8.0
52
- Requires-Dist: statsmodels>=0.14.5
52
+ Requires-Dist: statsmodels>=0.14.6
53
53
  Provides-Extra: all
54
54
  Requires-Dist: plotnine[extra]; extra == "all"
55
55
  Requires-Dist: plotnine[doc]; extra == "all"
@@ -477,6 +477,10 @@ quartodoc:
477
477
  - plot_background
478
478
  - plot_caption
479
479
  - plot_caption_position
480
+ - plot_footer
481
+ - plot_footer_background
482
+ - plot_footer_line
483
+ - plot_footer_position
480
484
  - plot_margin
481
485
  - plot_margin_bottom
482
486
  - plot_margin_left
@@ -19,12 +19,43 @@ title: Changelog
19
19
  - Added [](:class:`~plotnine.composition.plot_annotation`), allowing you to add title,
20
20
  subtitle or caption to a composition.
21
21
 
22
+
23
+ - [](:class:`~plotnine.labs`) can now be used to create a `footer`.
24
+ This footer can be styled using the `plot_footer` parameter to [](:class:`~plotnine.theme`).
25
+
26
+ ```python
27
+ theme(plot_footer=element_text(size=13))
28
+ ```
29
+ And you can also give the footer a background with:
30
+
31
+ ```python
32
+ theme(plot_footer_background=element_text(fill="pink"))
33
+ ```
34
+
35
+ Or separate it from the `caption` or the rest of the plot with a line.
36
+
37
+ ```python
38
+ theme(plot_footer_line=element_line(color="black"))
39
+ ```
40
+
22
41
  ### Bug Fixes
23
42
 
24
43
  - Fixed [](:class:`~plotnine.geom_smooth`) / [](:class:`~plotnine.stat_smooth`) when using a linear model via "lm" with weights for the model to do a weighted regression. This bug did not affect the formula API of the linear model. ({{< issue 1005 >}})
25
44
 
26
45
  - Fixed rendering of SVGs in jupyter notebooks.
27
46
 
47
+ - Fixed [](:class:`~plotnine.geom_legend`) to show an empty key for
48
+ [](:class:`~plotnine.geom_point`) when the shape is mapped to variable with missing
49
+ values.
50
+
51
+ ## v0.15.3
52
+ (2025-01-28)
53
+
54
+ ### Enhancements
55
+
56
+ - Removed warnings about copy-on-write for pandas >= 3.0.0
57
+
58
+
28
59
  ## v0.15.2
29
60
  (2025-12-12)
30
61
 
@@ -14,6 +14,9 @@ from plotnine._mpl.utils import (
14
14
  if TYPE_CHECKING:
15
15
  from typing import Any
16
16
 
17
+ from matplotlib.lines import Line2D
18
+ from matplotlib.patches import Rectangle
19
+
17
20
  from plotnine.composition._compose import Compose
18
21
 
19
22
  from ._composition_side_space import CompositionSideSpaces
@@ -44,6 +47,11 @@ class CompositionLayoutItems:
44
47
  self.plot_title: Text | None = get("plot_title")
45
48
  self.plot_subtitle: Text | None = get("plot_subtitle")
46
49
  self.plot_caption: Text | None = get("plot_caption")
50
+ self.plot_footer: Text | None = get("plot_footer")
51
+ self.plot_footer_background: Rectangle | None = get(
52
+ "plot_footer_background"
53
+ )
54
+ self.plot_footer_line: Line2D | None = get("plot_footer_line")
47
55
 
48
56
  def _is_blank(self, name: str) -> bool:
49
57
  return self.cmp.theme.T.is_blank(name)
@@ -55,6 +63,7 @@ class CompositionLayoutItems:
55
63
  theme = self.cmp.theme
56
64
  plot_title_position = theme.getp("plot_title_position", "panel")
57
65
  plot_caption_position = theme.getp("plot_caption_position", "panel")
66
+ plot_footer_position = theme.getp("plot_footer_position", "plot")
58
67
  justify = CompositionTextJustifier(spaces)
59
68
 
60
69
  if self.plot_title:
@@ -78,6 +87,40 @@ class CompositionLayoutItems:
78
87
  self.plot_caption, ha, plot_caption_position
79
88
  )
80
89
 
90
+ if self.plot_footer:
91
+ ha = theme.getp(("plot_footer", "ha"), "left")
92
+ self.plot_footer.set_y(spaces.b.y1("plot_footer"))
93
+ justify.horizontally_about(
94
+ self.plot_footer, ha, plot_footer_position
95
+ )
96
+ self._resize_plot_footer_background(spaces)
97
+ self._resize_plot_footer_line(spaces)
98
+
99
+ def _resize_plot_footer_background(self, spaces: CompositionSideSpaces):
100
+ """
101
+ Resize the plot footer to the size of the footer
102
+ """
103
+ if not self.plot_footer_background:
104
+ return
105
+
106
+ self.plot_footer_background.set_x(spaces.l.offset)
107
+ self.plot_footer_background.set_y(spaces.b.offset)
108
+ self.plot_footer_background.set_height(spaces.b.footer_height)
109
+ self.plot_footer_background.set_width(spaces.plot_width)
110
+
111
+ def _resize_plot_footer_line(self, spaces: CompositionSideSpaces):
112
+ """
113
+ Resize the footer line to be a border above the footer
114
+ """
115
+ if not self.plot_footer_line:
116
+ return
117
+
118
+ x1 = spaces.l.offset
119
+ x2 = x1 + spaces.plot_width
120
+ y1 = y2 = spaces.b.offset + spaces.b.footer_height
121
+ self.plot_footer_line.set_xdata([x1, x2])
122
+ self.plot_footer_line.set_ydata([y1, y2])
123
+
81
124
 
82
125
  class CompositionTextJustifier(TextJustifier):
83
126
  """
@@ -218,6 +218,9 @@ class composition_bottom_space(_composition_side_space):
218
218
  Ordered from the edge of the figure and going inwards
219
219
  """
220
220
 
221
+ plot_footer_margin_bottom: float = 0
222
+ plot_footer: float = 0
223
+ plot_footer_margin_top: float = 0
221
224
  plot_margin: float = 0
222
225
  plot_caption_margin_bottom: float = 0
223
226
  plot_caption: float = 0
@@ -231,6 +234,11 @@ class composition_bottom_space(_composition_side_space):
231
234
  F = W / H
232
235
 
233
236
  self.plot_margin = theme.getp("plot_margin_bottom") * F
237
+ if items.plot_footer:
238
+ m = theme.get_margin("plot_footer").fig
239
+ self.plot_footer_margin_bottom = m.b * F
240
+ self.plot_footer = geometry.height(items.plot_footer)
241
+ self.plot_footer_margin_top = m.t * F
234
242
 
235
243
  if items.plot_caption:
236
244
  m = theme.get_margin("plot_caption").fig
@@ -269,6 +277,17 @@ class composition_bottom_space(_composition_side_space):
269
277
  """
270
278
  return self.to_figure_space(self.sum_incl(item))
271
279
 
280
+ @property
281
+ def footer_height(self):
282
+ """
283
+ The height of the footer including the margins
284
+ """
285
+ return (
286
+ self.plot_footer_margin_bottom
287
+ + self.plot_footer
288
+ + self.plot_footer_margin_top
289
+ )
290
+
272
291
  @property
273
292
  def items_bottom_relative(self):
274
293
  """
@@ -361,6 +380,20 @@ class CompositionSideSpaces:
361
380
  0,
362
381
  )
363
382
 
383
+ @property
384
+ def plot_width(self) -> float:
385
+ """
386
+ Width [figure dimensions] of the whole plot composition
387
+ """
388
+ return float(self.gridspec.width)
389
+
390
+ @property
391
+ def plot_height(self) -> float:
392
+ """
393
+ Height [figure dimensions] of the whole plot composition
394
+ """
395
+ return float(self.gridspec.height)
396
+
364
397
  @property
365
398
  def horizontal_space(self) -> float:
366
399
  """
@@ -26,6 +26,8 @@ if TYPE_CHECKING:
26
26
 
27
27
  from matplotlib.axes import Axes
28
28
  from matplotlib.axis import Tick
29
+ from matplotlib.lines import Line2D
30
+ from matplotlib.patches import Rectangle
29
31
  from matplotlib.transforms import Transform
30
32
 
31
33
  from plotnine import ggplot
@@ -86,12 +88,18 @@ class PlotLayoutItems:
86
88
  # # AnchoredOffsetboxes (groups of legends)
87
89
  self.legends: legend_artists | None = get("legends")
88
90
  self.plot_caption: Text | None = get("plot_caption")
91
+ self.plot_footer: Text | None = get("plot_footer")
89
92
  self.plot_subtitle: Text | None = get("plot_subtitle")
90
93
  self.plot_title: Text | None = get("plot_title")
91
94
  self.plot_tag: Text | None = get("plot_tag")
92
95
  self.strip_text_x: list[StripText] | None = get("strip_text_x")
93
96
  self.strip_text_y: list[StripText] | None = get("strip_text_y")
94
97
 
98
+ self.plot_footer_background: Rectangle | None = get(
99
+ "plot_footer_background"
100
+ )
101
+ self.plot_footer_line: Line2D | None = get("plot_footer_line")
102
+
95
103
  def _is_blank(self, name: str) -> bool:
96
104
  return self.plot.theme.T.is_blank(name)
97
105
 
@@ -345,6 +353,7 @@ class PlotLayoutItems:
345
353
  theme = self.plot.theme
346
354
  plot_title_position = theme.getp("plot_title_position", "panel")
347
355
  plot_caption_position = theme.getp("plot_caption_position", "panel")
356
+ plot_footer_position = theme.getp("plot_footer_position", "plot")
348
357
  justify = PlotTextJustifier(spaces)
349
358
 
350
359
  if self.plot_tag:
@@ -371,6 +380,15 @@ class PlotLayoutItems:
371
380
  self.plot_caption, ha, plot_caption_position
372
381
  )
373
382
 
383
+ if self.plot_footer:
384
+ ha = theme.getp(("plot_footer", "ha"), "left")
385
+ self.plot_footer.set_y(spaces.b.y1("plot_footer"))
386
+ justify.horizontally_about(
387
+ self.plot_footer, ha, plot_footer_position
388
+ )
389
+ self._resize_plot_footer_background(spaces)
390
+ self._resize_plot_footer_line(spaces)
391
+
374
392
  if self.axis_title_x:
375
393
  ha = theme.getp(("axis_title_x", "ha"), "center")
376
394
  self.axis_title_x.set_y(spaces.b.y1("axis_title_x"))
@@ -505,6 +523,31 @@ class PlotLayoutItems:
505
523
  for text, scale in zip(self.strip_text_y, relative_widths):
506
524
  text.patch.expand = scale
507
525
 
526
+ def _resize_plot_footer_background(self, spaces: PlotSideSpaces):
527
+ """
528
+ Resize the plot footer to the size of the footer
529
+ """
530
+ if not self.plot_footer_background:
531
+ return
532
+
533
+ self.plot_footer_background.set_x(spaces.l.offset)
534
+ self.plot_footer_background.set_y(spaces.b.offset)
535
+ self.plot_footer_background.set_height(spaces.b.footer_height)
536
+ self.plot_footer_background.set_width(spaces.plot_width)
537
+
538
+ def _resize_plot_footer_line(self, spaces: PlotSideSpaces):
539
+ """
540
+ Resize the footer line to be a border above the footer
541
+ """
542
+ if not self.plot_footer_line:
543
+ return
544
+
545
+ x1 = spaces.l.offset
546
+ x2 = x1 + spaces.plot_width
547
+ y1 = y2 = spaces.b.offset + spaces.b.footer_height
548
+ self.plot_footer_line.set_xdata([x1, x2])
549
+ self.plot_footer_line.set_ydata([y1, y2])
550
+
508
551
 
509
552
  def _text_is_visible(text: Text) -> bool:
510
553
  """
@@ -553,6 +553,9 @@ class bottom_space(_plot_side_space):
553
553
  Ordered from the edge of the figure and going inwards
554
554
  """
555
555
 
556
+ plot_footer_margin_bottom: float = 0
557
+ plot_footer: float = 0
558
+ plot_footer_margin_top: float = 0
556
559
  plot_margin: float = 0
557
560
  tag_alignment: float = 0
558
561
  plot_tag_margin_bottom: float = 0
@@ -602,6 +605,12 @@ class bottom_space(_plot_side_space):
602
605
  self.plot_caption = geometry.height(items.plot_caption)
603
606
  self.plot_caption_margin_top = m.t * F
604
607
 
608
+ if items.plot_footer:
609
+ m = theme.get_margin("plot_footer").fig
610
+ self.plot_footer_margin_bottom = m.b * F
611
+ self.plot_footer = geometry.height(items.plot_footer)
612
+ self.plot_footer_margin_top = m.t * F
613
+
605
614
  if items.legends and items.legends.bottom:
606
615
  self.legend = self.legend_height
607
616
  self.legend_box_spacing = theme.getp("legend_box_spacing") * F
@@ -680,6 +689,17 @@ class bottom_space(_plot_side_space):
680
689
  """
681
690
  return self.y1("legend")
682
691
 
692
+ @property
693
+ def footer_height(self):
694
+ """
695
+ The height of the footer including the margins
696
+ """
697
+ return (
698
+ self.plot_footer_margin_bottom
699
+ + self.plot_footer
700
+ + self.plot_footer_margin_top
701
+ )
702
+
683
703
  @property
684
704
  def tag_height(self):
685
705
  """
@@ -4,6 +4,7 @@ from dataclasses import dataclass
4
4
  from typing import TYPE_CHECKING
5
5
 
6
6
  import pandas as pd
7
+ from packaging.version import Version
7
8
 
8
9
  if TYPE_CHECKING:
9
10
  from typing_extensions import Self
@@ -11,6 +12,8 @@ if TYPE_CHECKING:
11
12
  from plotnine import ggplot
12
13
  from plotnine.composition import Compose
13
14
 
15
+ PANDAS_LT_3 = Version(pd.__version__) < Version("3.0")
16
+
14
17
 
15
18
  def reopen(fig):
16
19
  """
@@ -55,12 +58,11 @@ class plot_context:
55
58
 
56
59
  # Contexts
57
60
  self.rc_context = mpl.rc_context(plot.theme.rcParams)
58
- # TODO: Remove this context when copy-on-write is permanent, i.e.
59
- # pandas >= 3.0
60
- self.pd_option_context = pd.option_context(
61
- "mode.copy_on_write",
62
- True,
63
- )
61
+ if PANDAS_LT_3:
62
+ self.pd_option_context = pd.option_context(
63
+ "mode.copy_on_write",
64
+ True,
65
+ )
64
66
 
65
67
  def __enter__(self) -> Self:
66
68
  """
@@ -68,7 +70,8 @@ class plot_context:
68
70
  """
69
71
 
70
72
  self.rc_context.__enter__()
71
- self.pd_option_context.__enter__()
73
+ if PANDAS_LT_3:
74
+ self.pd_option_context.__enter__()
72
75
 
73
76
  return self
74
77
 
@@ -89,7 +92,8 @@ class plot_context:
89
92
  plt.close(self.plot.figure)
90
93
 
91
94
  self.rc_context.__exit__(exc_type, exc_value, exc_traceback)
92
- self.pd_option_context.__exit__(exc_type, exc_value, exc_traceback)
95
+ if PANDAS_LT_3:
96
+ self.pd_option_context.__exit__(exc_type, exc_value, exc_traceback)
93
97
 
94
98
 
95
99
  @dataclass
@@ -123,6 +123,8 @@ class Compose:
123
123
  | ------------- |
124
124
  | |
125
125
  | caption |
126
+ |-------------------|
127
+ | footer |
126
128
  -------------------
127
129
  """
128
130
  _sidespaces: CompositionSideSpaces
@@ -573,13 +575,28 @@ class Compose:
573
575
  """
574
576
  Draw the background rectangle of the composition
575
577
  """
578
+ from matplotlib.lines import Line2D
576
579
  from matplotlib.patches import Rectangle
577
580
 
578
- rect = Rectangle((0, 0), 0, 0, facecolor="none", zorder=-1000)
581
+ zorder = -1000
582
+ rect = Rectangle((0, 0), 0, 0, facecolor="none", zorder=zorder)
579
583
  self.figure.add_artist(rect)
580
584
  self._gridspec.patch = rect
581
585
  self.theme.targets.plot_background = rect
582
586
 
587
+ if self.annotation.footer:
588
+ rect = Rectangle(
589
+ (0, 0), 0, 0, facecolor="none", linewidth=0, zorder=zorder + 1
590
+ )
591
+ self.figure.add_artist(rect)
592
+ self.theme.targets.plot_footer_background = rect
593
+
594
+ line = Line2D(
595
+ [0, 0], [0, 0], color="none", linewidth=0, zorder=zorder + 2
596
+ )
597
+ self.figure.add_artist(line)
598
+ self.theme.targets.plot_footer_line = line
599
+
583
600
  def _draw_annotation(self):
584
601
  """
585
602
  Draw the items in the annotation
@@ -602,6 +619,9 @@ class Compose:
602
619
  if caption := self.annotation.caption:
603
620
  targets.plot_caption = figure.text(0, 0, caption)
604
621
 
622
+ if footer := self.annotation.footer:
623
+ targets.plot_footer = figure.text(0, 0, footer)
624
+
605
625
  def save(
606
626
  self,
607
627
  filename: str | Path | BytesIO,
@@ -36,9 +36,14 @@ class plot_annotation(ComposeAddable):
36
36
  The caption of the composition
37
37
  """
38
38
 
39
+ footer: str | None = None
40
+ """
41
+ The footer of the composition
42
+ """
43
+
39
44
  theme: theme = field(default_factory=theme) # pyright: ignore[reportUnboundVariable]
40
45
  """
41
- Theme to use for the plot title, subtitle, caption, margin and background
46
+ Theme for the plot title, subtitle, caption, footer, margin and background
42
47
 
43
48
  It also controls the [](`~plotnine.themes.themeables.figure_size`) of the
44
49
  composition. The default theme is the same as the default one used for the
@@ -127,6 +127,8 @@ class ggplot:
127
127
  | axis_text |
128
128
  | axis_title |
129
129
  | caption |
130
+ |-------------------------|
131
+ | footer |
130
132
  -------------------------
131
133
  """
132
134
 
@@ -553,6 +555,7 @@ class ggplot:
553
555
  subtitle = self.labels.get("subtitle", "")
554
556
  caption = self.labels.get("caption", "")
555
557
  tag = self.labels.get("tag", "")
558
+ footer = self.labels.get("footer", "")
556
559
 
557
560
  # Get the axis labels (default or specified by user)
558
561
  # and let the coordinate modify them e.g. flip
@@ -570,6 +573,9 @@ class ggplot:
570
573
  if caption:
571
574
  targets.plot_caption = figure.text(0, 0, caption)
572
575
 
576
+ if footer:
577
+ targets.plot_footer = figure.text(0, 0, footer)
578
+
573
579
  if tag:
574
580
  targets.plot_tag = figure.text(0, 0, tag)
575
581
 
@@ -587,13 +593,30 @@ class ggplot:
587
593
  wm.draw(self.figure)
588
594
 
589
595
  def _draw_plot_background(self):
596
+ from matplotlib.lines import Line2D
590
597
  from matplotlib.patches import Rectangle
591
598
 
592
- rect = Rectangle((0, 0), 0, 0, facecolor="none", zorder=-1000)
599
+ zorder = -1000
600
+ rect = Rectangle((0, 0), 0, 0, facecolor="none", zorder=zorder)
593
601
  self.figure.add_artist(rect)
594
602
  self._gridspec.patch = rect
595
603
  self.theme.targets.plot_background = rect
596
604
 
605
+ # Footer background and line only if there is a footer, and put
606
+ # it on top of the plot background
607
+ if self.labels.get("footer", ""):
608
+ rect = Rectangle(
609
+ (0, 0), 0, 0, facecolor="none", linewidth=0, zorder=zorder + 1
610
+ )
611
+ self.figure.add_artist(rect)
612
+ self.theme.targets.plot_footer_background = rect
613
+
614
+ line = Line2D(
615
+ [0, 0], [0, 0], color="none", linewidth=0, zorder=zorder + 2
616
+ )
617
+ self.figure.add_artist(line)
618
+ self.theme.targets.plot_footer_line = line
619
+
597
620
  def _save_filename(self, ext: str) -> Path:
598
621
  """
599
622
  Make a filename for use by the save method
@@ -272,9 +272,12 @@ class guide_legend(guide):
272
272
  # Drawings
273
273
  drawings: list[ColoredDrawingArea] = []
274
274
  for i in range(nbreak):
275
- da = ColoredDrawingArea(
276
- elements.key_widths[i], elements.key_heights[i], 0, 0
277
- )
275
+ try:
276
+ w, h = elements.key_widths[i], elements.key_heights[i]
277
+ except IndexError:
278
+ w, h = elements.empty_key_size
279
+
280
+ da = ColoredDrawingArea(w, h, 0, 0)
278
281
 
279
282
  # overlay geoms
280
283
  for params in self._layer_parameters:
@@ -482,3 +485,14 @@ class GuideElementsLegend(GuideElements):
482
485
  if self.is_horizontal:
483
486
  return [max(hs)] * len(hs)
484
487
  return hs
488
+
489
+ @cached_property
490
+ def empty_key_size(self) -> tuple[float, float]:
491
+ """
492
+ Size of an empty key
493
+ """
494
+ return (
495
+ (max(self.key_widths), min(self.key_heights))
496
+ if self.is_vertical
497
+ else (min(self.key_widths), max(self.key_heights))
498
+ )
@@ -66,7 +66,7 @@ class range_view:
66
66
  @dataclass
67
67
  class labels_view:
68
68
  """
69
- Scale labels (incl. caption & title) for the plot
69
+ Scale labels (incl. caption, title, footer) for the plot
70
70
  """
71
71
 
72
72
  x: Optional[str] = None
@@ -80,8 +80,9 @@ class labels_view:
80
80
  size: Optional[str] = None
81
81
  stroke: Optional[str] = None
82
82
  title: Optional[str] = None
83
- caption: Optional[str] = None
84
83
  subtitle: Optional[str] = None
84
+ caption: Optional[str] = None
85
+ footer: Optional[str] = None
85
86
  tag: Optional[str] = None
86
87
 
87
88
  def update(self, other: labels_view):
@@ -90,6 +90,13 @@ class labs:
90
90
  The caption at the bottom of the plot.
91
91
  """
92
92
 
93
+ footer: str | None = None
94
+ """
95
+ The footer at the bottom of the plot
96
+
97
+ The footer when added is below the caption
98
+ """
99
+
93
100
  tag: str | None = None
94
101
  """
95
102
  A plot tag
@@ -7,6 +7,7 @@ if TYPE_CHECKING:
7
7
  from typing import Optional
8
8
 
9
9
  from matplotlib.collections import LineCollection
10
+ from matplotlib.lines import Line2D
10
11
  from matplotlib.patches import Rectangle
11
12
  from matplotlib.text import Text
12
13
 
@@ -37,9 +38,12 @@ class ThemeTargets:
37
38
  panel_border: list[Rectangle] = field(default_factory=list)
38
39
  plot_caption: Optional[Text] = None
39
40
  plot_subtitle: Optional[Text] = None
41
+ plot_footer: Optional[Text] = None
40
42
  plot_tag: Optional[Text] = None
41
43
  plot_title: Optional[Text] = None
42
44
  plot_background: Optional[Rectangle] = None
45
+ plot_footer_background: Optional[Rectangle] = None
46
+ plot_footer_line: Optional[Line2D] = None
43
47
  strip_background_x: list[StripTextPatch] = field(default_factory=list)
44
48
  strip_background_y: list[StripTextPatch] = field(default_factory=list)
45
49
  strip_text_x: list[StripText] = field(default_factory=list)
@@ -124,9 +124,11 @@ class theme:
124
124
  plot_title=None,
125
125
  plot_subtitle=None,
126
126
  plot_caption=None,
127
+ plot_footer=None,
127
128
  plot_tag=None,
128
129
  plot_title_position=None,
129
130
  plot_caption_position=None,
131
+ plot_footer_position=None,
130
132
  plot_tag_location=None,
131
133
  plot_tag_position=None,
132
134
  strip_text_x=None,
@@ -157,6 +159,7 @@ class theme:
157
159
  panel_grid_major=None,
158
160
  panel_grid_minor=None,
159
161
  panel_grid=None,
162
+ plot_footer_line=None,
160
163
  line=None,
161
164
  legend_key=None,
162
165
  legend_frame=None,
@@ -165,6 +168,7 @@ class theme:
165
168
  panel_background=None,
166
169
  panel_border=None,
167
170
  plot_background=None,
171
+ plot_footer_background=None,
168
172
  strip_background_x=None,
169
173
  strip_background_y=None,
170
174
  strip_background=None,
@@ -109,6 +109,15 @@ class theme_gray(theme):
109
109
  ma="left",
110
110
  margin=margin(t=m, unit="fig"),
111
111
  ),
112
+ plot_footer=element_text(
113
+ size=base_size * 0.8,
114
+ ha="left",
115
+ va="bottom",
116
+ ma="left",
117
+ margin=margin(t=1 / 3, b=1 / 3, unit="lines"),
118
+ ),
119
+ plot_footer_background=element_blank(),
120
+ plot_footer_line=element_blank(),
112
121
  plot_margin=m,
113
122
  plot_subtitle=element_text(
114
123
  va="top",
@@ -128,6 +137,7 @@ class theme_gray(theme):
128
137
  ),
129
138
  plot_title_position="panel",
130
139
  plot_caption_position="panel",
140
+ plot_footer_position="plot",
131
141
  plot_tag_location="margin",
132
142
  plot_tag_position="topleft",
133
143
  strip_align=0,
@@ -85,6 +85,12 @@ class theme_matplotlib(theme):
85
85
  ma="left",
86
86
  margin=margin(t=m, unit="fig"),
87
87
  ),
88
+ plot_footer=element_text(
89
+ ha="left",
90
+ va="bottom",
91
+ ma="left",
92
+ margin=margin(t=1 / 3, b=1 / 3, unit="lines"),
93
+ ),
88
94
  plot_margin=m,
89
95
  plot_subtitle=element_text(
90
96
  size=base_size * 0.9,
@@ -92,6 +98,8 @@ class theme_matplotlib(theme):
92
98
  ma="left",
93
99
  margin=margin(b=m, unit="fig"),
94
100
  ),
101
+ plot_footer_background=element_blank(),
102
+ plot_footer_line=element_blank(),
95
103
  plot_title=element_text(
96
104
  va="top",
97
105
  ma="left",
@@ -104,6 +112,7 @@ class theme_matplotlib(theme):
104
112
  ),
105
113
  plot_title_position="panel",
106
114
  plot_caption_position="panel",
115
+ plot_footer_position="plot",
107
116
  plot_tag_location="margin",
108
117
  plot_tag_position="topleft",
109
118
  strip_align=0,