plot-io 0.2.0__tar.gz → 0.3.0__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 (240) hide show
  1. {plot_io-0.2.0 → plot_io-0.3.0}/API.md +218 -68
  2. {plot_io-0.2.0 → plot_io-0.3.0}/EXAMPLES.md +30 -0
  3. {plot_io-0.2.0 → plot_io-0.3.0}/PKG-INFO +3 -3
  4. {plot_io-0.2.0 → plot_io-0.3.0}/README.md +1 -1
  5. plot_io-0.3.0/examples/annotated.png +0 -0
  6. plot_io-0.3.0/examples/bars.png +0 -0
  7. plot_io-0.3.0/examples/box_plots.png +0 -0
  8. plot_io-0.3.0/examples/density.png +0 -0
  9. plot_io-0.3.0/examples/distributions.png +0 -0
  10. plot_io-0.3.0/examples/error_bars.png +0 -0
  11. plot_io-0.3.0/examples/facets.png +0 -0
  12. plot_io-0.3.0/examples/grids2d.png +0 -0
  13. plot_io-0.3.0/examples/groups.png +0 -0
  14. plot_io-0.3.0/examples/heatmap.png +0 -0
  15. plot_io-0.3.0/examples/large_data.png +0 -0
  16. plot_io-0.3.0/examples/layout_axes.png +0 -0
  17. plot_io-0.3.0/examples/layout_borders.png +0 -0
  18. plot_io-0.3.0/examples/line_band.png +0 -0
  19. plot_io-0.3.0/examples/scales.png +0 -0
  20. plot_io-0.3.0/examples/scatter_groups.png +0 -0
  21. plot_io-0.3.0/examples/shared_colorbar.png +0 -0
  22. plot_io-0.3.0/examples/styles/altair.png +0 -0
  23. plot_io-0.3.0/examples/styles/bokeh-2.png +0 -0
  24. plot_io-0.3.0/examples/styles/bokeh.png +0 -0
  25. plot_io-0.3.0/examples/styles/chartjs-2.png +0 -0
  26. plot_io-0.3.0/examples/styles/chartjs.png +0 -0
  27. plot_io-0.3.0/examples/styles/default-2.png +0 -0
  28. plot_io-0.3.0/examples/styles/default.png +0 -0
  29. plot_io-0.3.0/examples/styles/economist-2.png +0 -0
  30. plot_io-0.3.0/examples/styles/economist.png +0 -0
  31. plot_io-0.3.0/examples/styles/excel-2.png +0 -0
  32. plot_io-0.3.0/examples/styles/excel.png +0 -0
  33. plot_io-0.3.0/examples/styles/fivethirtyeight.png +0 -0
  34. plot_io-0.3.0/examples/styles/ggplot2-2.png +0 -0
  35. plot_io-0.3.0/examples/styles/ggplot2-bw-2.png +0 -0
  36. plot_io-0.3.0/examples/styles/ggplot2-bw.png +0 -0
  37. plot_io-0.3.0/examples/styles/ggplot2.png +0 -0
  38. plot_io-0.3.0/examples/styles/matlab-2.png +0 -0
  39. plot_io-0.3.0/examples/styles/matlab.png +0 -0
  40. plot_io-0.3.0/examples/styles/matplotlib-2.png +0 -0
  41. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/matplotlib-classic-2.png +0 -0
  42. plot_io-0.3.0/examples/styles/matplotlib-classic.png +0 -0
  43. plot_io-0.3.0/examples/styles/observable.png +0 -0
  44. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/plotly-2.png +0 -0
  45. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/plotly-white-2.png +0 -0
  46. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/plotly-white.png +0 -0
  47. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/plotly.png +0 -0
  48. plot_io-0.3.0/examples/styles/seaborn-2.png +0 -0
  49. plot_io-0.3.0/examples/styles/seaborn-whitegrid-2.png +0 -0
  50. plot_io-0.3.0/examples/styles/seaborn-whitegrid.png +0 -0
  51. plot_io-0.3.0/examples/styles/seaborn.png +0 -0
  52. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/tufte.png +0 -0
  53. plot_io-0.3.0/examples/time_twin.png +0 -0
  54. plot_io-0.3.0/examples/units.png +0 -0
  55. plot_io-0.3.0/examples/variable_fonts.png +0 -0
  56. plot_io-0.3.0/examples/variable_fonts.py +29 -0
  57. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/__init__.py +6 -5
  58. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/_backend.py +11 -4
  59. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/axis.py +35 -20
  60. plot_io-0.3.0/plot_io/color/__init__.py +4 -0
  61. plot_io-0.3.0/plot_io/color/data.py +1614 -0
  62. plot_io-0.3.0/plot_io/color/maps.py +282 -0
  63. plot_io-0.3.0/plot_io/color/palettes.py +205 -0
  64. plot_io-0.3.0/plot_io/color/values.py +244 -0
  65. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/colorbar.py +10 -10
  66. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/decorations.py +14 -7
  67. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/defaults.py +19 -13
  68. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/facets.py +1 -1
  69. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/figure.py +14 -6
  70. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/labels.py +3 -21
  71. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/legend.py +8 -8
  72. plot_io-0.3.0/plot_io/lines.py +38 -0
  73. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/plot.py +14 -6
  74. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/render.py +11 -11
  75. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/__init__.py +14 -5
  76. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/area.py +3 -2
  77. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/bar.py +5 -5
  78. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/box.py +5 -4
  79. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/contour.py +8 -6
  80. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/ecdf.py +5 -3
  81. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/errorbar.py +3 -2
  82. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/errors.py +2 -2
  83. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/fill.py +3 -2
  84. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/heatmap.py +8 -16
  85. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/hexbin.py +4 -3
  86. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/hist.py +5 -5
  87. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/kde.py +3 -2
  88. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/kde2d.py +2 -1
  89. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/line.py +4 -3
  90. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/pie.py +14 -13
  91. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/points.py +2 -2
  92. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/regression.py +5 -3
  93. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/stem.py +3 -2
  94. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/violin.py +4 -2
  95. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/settings.py +93 -17
  96. plot_io-0.3.0/plot_io/sizemaps.py +93 -0
  97. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/styles/library.py +5 -1
  98. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/text.py +26 -5
  99. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/ticks.py +25 -2
  100. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/units.py +50 -7
  101. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/values.py +6 -6
  102. {plot_io-0.2.0 → plot_io-0.3.0}/pyproject.toml +1 -1
  103. plot_io-0.3.0/tests/fonts/VarTest.ttf +0 -0
  104. plot_io-0.3.0/tests/golden.json +21 -0
  105. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_defaults.py +3 -4
  106. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_figure_title.py +2 -2
  107. plot_io-0.3.0/tests/test_fonts.py +65 -0
  108. plot_io-0.3.0/tests/test_maps.py +231 -0
  109. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_palettes.py +47 -2
  110. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_settings.py +3 -3
  111. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_style_settings.py +8 -8
  112. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_style_types.py +1 -1
  113. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_styles.py +2 -2
  114. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_tables.py +2 -2
  115. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_units.py +40 -10
  116. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_values.py +54 -1
  117. {plot_io-0.2.0 → plot_io-0.3.0}/tools/settings_doc.py +4 -1
  118. plot_io-0.2.0/examples/annotated.png +0 -0
  119. plot_io-0.2.0/examples/bars.png +0 -0
  120. plot_io-0.2.0/examples/box_plots.png +0 -0
  121. plot_io-0.2.0/examples/density.png +0 -0
  122. plot_io-0.2.0/examples/distributions.png +0 -0
  123. plot_io-0.2.0/examples/error_bars.png +0 -0
  124. plot_io-0.2.0/examples/facets.png +0 -0
  125. plot_io-0.2.0/examples/grids2d.png +0 -0
  126. plot_io-0.2.0/examples/groups.png +0 -0
  127. plot_io-0.2.0/examples/heatmap.png +0 -0
  128. plot_io-0.2.0/examples/large_data.png +0 -0
  129. plot_io-0.2.0/examples/layout_axes.png +0 -0
  130. plot_io-0.2.0/examples/layout_borders.png +0 -0
  131. plot_io-0.2.0/examples/line_band.png +0 -0
  132. plot_io-0.2.0/examples/scales.png +0 -0
  133. plot_io-0.2.0/examples/scatter_groups.png +0 -0
  134. plot_io-0.2.0/examples/shared_colorbar.png +0 -0
  135. plot_io-0.2.0/examples/styles/altair.png +0 -0
  136. plot_io-0.2.0/examples/styles/bokeh-2.png +0 -0
  137. plot_io-0.2.0/examples/styles/bokeh.png +0 -0
  138. plot_io-0.2.0/examples/styles/chartjs-2.png +0 -0
  139. plot_io-0.2.0/examples/styles/chartjs.png +0 -0
  140. plot_io-0.2.0/examples/styles/default-2.png +0 -0
  141. plot_io-0.2.0/examples/styles/default.png +0 -0
  142. plot_io-0.2.0/examples/styles/economist-2.png +0 -0
  143. plot_io-0.2.0/examples/styles/economist.png +0 -0
  144. plot_io-0.2.0/examples/styles/excel-2.png +0 -0
  145. plot_io-0.2.0/examples/styles/excel.png +0 -0
  146. plot_io-0.2.0/examples/styles/fivethirtyeight.png +0 -0
  147. plot_io-0.2.0/examples/styles/ggplot2-2.png +0 -0
  148. plot_io-0.2.0/examples/styles/ggplot2-bw-2.png +0 -0
  149. plot_io-0.2.0/examples/styles/ggplot2-bw.png +0 -0
  150. plot_io-0.2.0/examples/styles/ggplot2.png +0 -0
  151. plot_io-0.2.0/examples/styles/matlab-2.png +0 -0
  152. plot_io-0.2.0/examples/styles/matlab.png +0 -0
  153. plot_io-0.2.0/examples/styles/matplotlib-2.png +0 -0
  154. plot_io-0.2.0/examples/styles/matplotlib-classic.png +0 -0
  155. plot_io-0.2.0/examples/styles/observable.png +0 -0
  156. plot_io-0.2.0/examples/styles/seaborn-2.png +0 -0
  157. plot_io-0.2.0/examples/styles/seaborn-whitegrid-2.png +0 -0
  158. plot_io-0.2.0/examples/styles/seaborn-whitegrid.png +0 -0
  159. plot_io-0.2.0/examples/styles/seaborn.png +0 -0
  160. plot_io-0.2.0/examples/time_twin.png +0 -0
  161. plot_io-0.2.0/examples/units.png +0 -0
  162. plot_io-0.2.0/plot_io/maps/__init__.py +0 -379
  163. plot_io-0.2.0/plot_io/maps/data.py +0 -333
  164. plot_io-0.2.0/plot_io/palettes.py +0 -142
  165. plot_io-0.2.0/plot_io/style.py +0 -87
  166. plot_io-0.2.0/tests/golden.json +0 -21
  167. plot_io-0.2.0/tests/test_maps.py +0 -126
  168. {plot_io-0.2.0 → plot_io-0.3.0}/.gitignore +0 -0
  169. {plot_io-0.2.0 → plot_io-0.3.0}/LICENSE +0 -0
  170. {plot_io-0.2.0 → plot_io-0.3.0}/examples/annotated.py +0 -0
  171. {plot_io-0.2.0 → plot_io-0.3.0}/examples/bars.py +0 -0
  172. {plot_io-0.2.0 → plot_io-0.3.0}/examples/box_plots.py +0 -0
  173. {plot_io-0.2.0 → plot_io-0.3.0}/examples/density.py +0 -0
  174. {plot_io-0.2.0 → plot_io-0.3.0}/examples/distributions.py +0 -0
  175. {plot_io-0.2.0 → plot_io-0.3.0}/examples/error_bars.py +0 -0
  176. {plot_io-0.2.0 → plot_io-0.3.0}/examples/facets.py +0 -0
  177. {plot_io-0.2.0 → plot_io-0.3.0}/examples/grids2d.py +0 -0
  178. {plot_io-0.2.0 → plot_io-0.3.0}/examples/groups.py +0 -0
  179. {plot_io-0.2.0 → plot_io-0.3.0}/examples/heatmap.py +0 -0
  180. {plot_io-0.2.0 → plot_io-0.3.0}/examples/large_data.py +0 -0
  181. {plot_io-0.2.0 → plot_io-0.3.0}/examples/layouts.py +0 -0
  182. {plot_io-0.2.0 → plot_io-0.3.0}/examples/line_band.py +0 -0
  183. {plot_io-0.2.0 → plot_io-0.3.0}/examples/scales.py +0 -0
  184. {plot_io-0.2.0 → plot_io-0.3.0}/examples/scatter_groups.py +0 -0
  185. {plot_io-0.2.0 → plot_io-0.3.0}/examples/shared_colorbar.py +0 -0
  186. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/altair-2.png +0 -0
  187. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/fivethirtyeight-2.png +0 -0
  188. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/matplotlib.png +0 -0
  189. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/observable-2.png +0 -0
  190. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles/tufte-2.png +0 -0
  191. {plot_io-0.2.0 → plot_io-0.3.0}/examples/styles.py +0 -0
  192. {plot_io-0.2.0 → plot_io-0.3.0}/examples/time_twin.py +0 -0
  193. {plot_io-0.2.0 → plot_io-0.3.0}/examples/units.py +0 -0
  194. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/density.py +0 -0
  195. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/enums.py +0 -0
  196. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/limits.py +0 -0
  197. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/markers.py +0 -0
  198. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/numbers.py +0 -0
  199. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/occupancy.py +0 -0
  200. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/scales.py +0 -0
  201. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/catdata.py +0 -0
  202. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/catpoints.py +0 -0
  203. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/curves.py +0 -0
  204. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/hist2d.py +0 -0
  205. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/series/scatter.py +0 -0
  206. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/shapes.py +0 -0
  207. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/sharing.py +0 -0
  208. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/slots.py +0 -0
  209. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/stacking.py +0 -0
  210. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/stats.py +0 -0
  211. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/styles/__init__.py +0 -0
  212. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/tables.py +0 -0
  213. {plot_io-0.2.0 → plot_io-0.3.0}/plot_io/times.py +0 -0
  214. {plot_io-0.2.0 → plot_io-0.3.0}/tests/helpers.py +0 -0
  215. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_bars.py +0 -0
  216. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_box.py +0 -0
  217. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_decorations.py +0 -0
  218. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_density.py +0 -0
  219. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_distributions.py +0 -0
  220. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_docs.py +0 -0
  221. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_entry.py +0 -0
  222. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_golden.py +0 -0
  223. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_grids.py +0 -0
  224. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_heatmap.py +0 -0
  225. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_jxl_output.py +0 -0
  226. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_layout.py +0 -0
  227. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_limits.py +0 -0
  228. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_markers.py +0 -0
  229. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_numbers.py +0 -0
  230. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_occupancy.py +0 -0
  231. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_output.py +0 -0
  232. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_pie.py +0 -0
  233. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_reflines.py +0 -0
  234. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_series.py +0 -0
  235. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_sharing.py +0 -0
  236. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_simplify.py +0 -0
  237. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_ticks.py +0 -0
  238. {plot_io-0.2.0 → plot_io-0.3.0}/tests/test_time_twin.py +0 -0
  239. {plot_io-0.2.0 → plot_io-0.3.0}/tools/bench.py +0 -0
  240. {plot_io-0.2.0 → plot_io-0.3.0}/tools/dist.py +0 -0
@@ -33,7 +33,7 @@ Complete reference. Worked examples are in [EXAMPLES.md](EXAMPLES.md).
33
33
  sans-serif, black text, line width, `simplify="auto"`, the palette, …), and
34
34
  `"Class.name"` for the settings of each class. A class without an entry uses its base
35
35
  class's. Entries are plain data: a default that follows another setting is written
36
- with units, `var()` or `calc()` (a plot title is `"1.2em"`, a minor tick `"60%"` of the
36
+ with units, `var()` or `calc()` (a legend's font is `"1em"`, a minor tick `"60%"` of the
37
37
  tick length, a fill's opacity `"calc(0.3 * var(alpha))"`). `None` and `"auto"` mean
38
38
  "chosen when drawing", as each setting's documentation says. `"XAxis.name"` and
39
39
  `"YAxis.name"` give one axis its own default.
@@ -57,6 +57,27 @@ Complete reference. Worked examples are in [EXAMPLES.md](EXAMPLES.md).
57
57
  * **Text.** Titles, axis labels and legend entries are strings or rich content: a list of
58
58
  strings and `pl.Span` (pdf_io's), e.g. `["Area (m", pl.Span("2",
59
59
  baseline_shift="super", font_scale=0.7), ")"]`.
60
+ * **Named colors.** `"blue"`, `"blue 0.45"`, `"blue 45%"`: 28 scales (`red`, `orange`,
61
+ `amber`, `yellow`, `lime`, `green`, `emerald`, `teal`, `cyan`, `sky`, `blue`, `indigo`,
62
+ `violet`, `purple`, `fuchsia`, `pink`, `rose`, `slate`, `gray`/`grey`, `zinc`, `neutral`,
63
+ `stone`, `taupe`, `mauve`, `mist`, `olive`, `black`, `white`), Tailwind CSS 4's OKLCh
64
+ shades 100–900 at levels 0.1–0.9, white at 0 and black at 1, interpolated in Oklab between
65
+ and gamut mapped into sRGB as CSS Color 4 specifies;
66
+ a bare name is level 0.5. They take precedence over CSS's names (`"red"` is `#fb2c36`,
67
+ not `#ff0000`); other CSS names (`"navy"`) keep their CSS values. `get()` returns the
68
+ name as given, `resolve()` the hex color.
69
+ * **Colors.** Named colors (above), any color pdf_io accepts: CSS names, `"#rrggbb[aa]"`, CSS Color 4 functions
70
+ (`"rgb(…)"`, `"hsl(…)"`, `"hwb(…)"`, `"lab(…)"`, `"lch(…)"`, `"oklab(…)"`,
71
+ `"oklch(64.5% 0.246 16.439)"`, `"color(display-p3 1 0 0)"`, …; colors outside sRGB are
72
+ gamut mapped as browsers do), tuples, `CMYK` and `Spot`; and `"C0"`, `"C1"`, … for the
73
+ palette's colors.
74
+ * **Fonts.** `font_family` is a CSS family list; weights (`font_weight`, `label_weight`,
75
+ `tick_label_weight`) are `normal`, `bold` or 1–1000, styles `normal`, `italic`,
76
+ `oblique` or `"oblique 10deg"`. With a variable font (pdf_io embeds the instance used),
77
+ the weight sets `wght`, the inherited `font_stretch` (`"condensed"`, `"87.5%"`) sets
78
+ `wdth`, the style `ital` or `slnt`, `font_optical_sizing="auto"` sets `opsz` from the
79
+ font size, and `font_variations` (`{"GRAD": 50}`) any axis:
80
+ `pl.Figure(font_family="Roboto Flex", font_stretch="85%", font_variations={"GRAD": 50})`.
60
81
  * **Enums.** Enum-like settings take strings; `pl.Marker`, `pl.LineStyle`,
61
82
  `pl.Orientation`, `pl.Scale`, `pl.Position`, `pl.Order` and `pl.Align` are `str` enums
62
83
  of the same values.
@@ -194,13 +215,18 @@ width.
194
215
  | Setting | Default | Meaning |
195
216
  |---|---|---|
196
217
  | `text` | — | Title text: a string or rich content; `\n` starts a line. |
197
- | `font_size` | '1.4rem' | Font size; default 1.4 × the base font size. Length; `%`: of the parent's font size. |
198
- | `font_weight` | 'bold' | `bold` or `normal`. |
218
+ | `font_size` | '1em' | Font size; default the base font size. Length; `%`: of the parent's font size. |
219
+ | `font_weight` | 'bold' | `bold`, `normal` or a weight 1–1000. |
220
+ | `font_style` | 'normal' | `normal`, `italic`, `oblique` or `"oblique 10deg"`. |
199
221
  | `align` | 'center' | Alignment. |
200
222
  | `over` | 'axes' | Width it is aligned and wrapped within: from the leftmost to the rightmost axes, or the whole figure. |
201
223
  | `pad` | '0.5em' | Gap between the title and the plots; default half the font size. Length. |
202
224
  | `color` | 'var(text_color)' | Text color. |
203
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
225
+ | `rule_gap` | '0.5em' | Gap between the title and the figure's `title_rule`. Length; `%`: of the font size. |
226
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
227
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
228
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
229
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
204
230
  <!-- /settings -->
205
231
 
206
232
  ### Shared axes
@@ -277,7 +303,10 @@ with outer labels only.
277
303
  | `vars` | — | Custom variables, read by `var(--name)` in any setting here and below: `{"accent": "#c00"}`. |
278
304
  | `scaling` | 1.0 | Multiplies every font size, line width, marker size, tick length and pad of the style; default 1. |
279
305
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
280
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
306
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
307
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
308
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
309
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
281
310
  | `text_color` | inherited ('black') | Text color. |
282
311
  | `line_width` | inherited (1.25) | Default line width. Length. |
283
312
  | `palette` | inherited (10 colors) | Colors of series without one. |
@@ -285,7 +314,7 @@ with outer labels only.
285
314
  | `rasterize` | inherited (False) | `True` or a dpi: series drawn as images inside the PDF. |
286
315
  | `simplify` | inherited ('auto') | pdf_io's `simplify` for every series; default `"auto"`. |
287
316
  | `data` | inherited (None) | A table whose columns the series' data arguments name. |
288
- | `color_map` | inherited ('viridis') | Default color map (alias `cmap`): of heatmaps, contours and numbers given as colors. |
317
+ | `color_map` | inherited ('rainbow_llhh') | Default color map (alias `cmap`): of heatmaps, contours and numbers given as colors. |
289
318
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
290
319
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
291
320
  | `minus` | inherited ('hyphen') | `hyphen` (`-`) or `minus` (U+2212, from an installed font). |
@@ -323,14 +352,17 @@ axes clip.
323
352
  | `vars` | — | Custom variables, read by `var(--name)` in any setting here and below: `{"accent": "#c00"}`. |
324
353
  | `share` | — | Another plot whose x and y axes this plot shares. |
325
354
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
326
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
355
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
356
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
357
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
358
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
327
359
  | `text_color` | inherited ('black') | Text color. |
328
360
  | `line_width` | inherited (1.25) | Default line width. Length. |
329
361
  | `palette` | inherited (10 colors) | Colors of series without one. |
330
362
  | `alpha` | inherited (1.0) | Default opacity of series. |
331
363
  | `rasterize` | inherited (False) | `True` or a dpi: series drawn as images inside the PDF. |
332
364
  | `simplify` | inherited ('auto') | pdf_io's `simplify` for every series: `"auto"`, `True`, a dpi or `False`. |
333
- | `color_map` | inherited ('viridis') | Default color map (alias `cmap`): of heatmaps, contours and numbers given as colors. |
365
+ | `color_map` | inherited ('rainbow_llhh') | Default color map (alias `cmap`): of heatmaps, contours and numbers given as colors. |
334
366
  | `data` | inherited (None) | A table (dict, pandas or polars data frame, numpy structured array): strings in the data arguments of series name its columns. |
335
367
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
336
368
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
@@ -346,13 +378,17 @@ axes clip.
346
378
  | Setting | Default | Meaning |
347
379
  |---|---|---|
348
380
  | `text` | — | Title text: a string or rich content. |
349
- | `font_size` | '1.2em' | Font size; default 1.2 × the base font size. Length; `%`: of the parent's font size. |
350
- | `font_weight` | 'normal' | `normal` or `bold`. |
381
+ | `font_size` | '1em' | Font size; default the base font size. Length; `%`: of the parent's font size. |
382
+ | `font_weight` | 'normal' | `normal`, `bold` or a weight 1–1000. |
383
+ | `font_style` | 'normal' | `normal`, `italic`, `oblique` or `"oblique 10deg"`. |
351
384
  | `color` | 'var(text_color)' | Text color. |
352
385
  | `align` | 'center' | Alignment over the axes. |
353
386
  | `pad` | 5.0 | Gap above the axes. Length; `%`: of the axes height. |
354
387
  | `over` | 'axes' | Width the title is aligned within: the axes, or the axes and the y axis labels. |
355
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
388
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
389
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
390
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
391
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
356
392
  <!-- /settings -->
357
393
 
358
394
  ### Legend
@@ -403,8 +439,12 @@ candidate covers more than 2 % marked cells; else the candidate covering the few
403
439
  | `row_height` | '1.35em' | Height of an entry. Length; `%`: of the font size. |
404
440
  | `glyph_gap` | '0.5em' | Gap between a symbol and its text. Length; `%`: of the font size. |
405
441
  | `column_gap` | '1em' | Gap between columns. Length; `%`: of the font size. |
442
+ | `title_gap` | '0.3em' | Gap below the title. Length; `%`: of the font size. |
406
443
  | `inner_pad` | 'auto' | Space inside the box; `"auto"`: 0.5em with a frame, 0.15em without. Length; `%`: of the font size. |
407
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
444
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
445
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
446
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
447
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
408
448
  <!-- /settings -->
409
449
 
410
450
  ### Decorations
@@ -488,8 +528,12 @@ Text:
488
528
  | `coords` | 'data' | `data`, `axes` (0–1) or `figure` (0–1). |
489
529
  | `color` | 'var(text_color)' | Text color; default `text_color`. |
490
530
  | `font_size` | inherited (11.0) | Font size. Length; `%`: of the parent's font size. |
491
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
492
- | `font_weight` | 'normal' | `normal` or `bold`. |
531
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
532
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
533
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
534
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
535
+ | `font_weight` | 'normal' | `normal`, `bold` or a weight 1–1000. |
536
+ | `font_style` | 'normal' | `normal`, `italic`, `oblique` or `"oblique 10deg"`. |
493
537
  | `text_color` | inherited ('black') | Text color. |
494
538
  | `name` | — | Legend entry; unset: not in the legend. |
495
539
  | `alpha` | 1.0 | Opacity. |
@@ -507,8 +551,12 @@ Annotate:
507
551
  | `coords` | 'data' | `data`, `axes` (0–1) or `figure` (0–1). |
508
552
  | `color` | 'var(text_color)' | Text color; default `text_color`. |
509
553
  | `font_size` | inherited (11.0) | Font size. Length; `%`: of the parent's font size. |
510
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
511
- | `font_weight` | 'normal' | `normal` or `bold`. |
554
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
555
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
556
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
557
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
558
+ | `font_weight` | 'normal' | `normal`, `bold` or a weight 1–1000. |
559
+ | `font_style` | 'normal' | `normal`, `italic`, `oblique` or `"oblique 10deg"`. |
512
560
  | `text_color` | inherited ('black') | Text color. |
513
561
  | `name` | — | Legend entry; unset: not in the legend. |
514
562
  | `alpha` | 1.0 | Opacity. |
@@ -642,8 +690,10 @@ or the plot's `spines` is set.
642
690
  | `tick_format` | 'auto' | Number format: `auto`, `percent`, `sci`, `eng`, `si`, `int`, a format string or a function. |
643
691
  | `tick_rotation` | 'auto' | Label rotation in degrees, or `"auto"` (45° when category labels overlap). Angle (bare: degrees). |
644
692
  | `max_ticks` | 'auto' | Most major ticks; `"auto"`: one per `tick_spacing` of axis length, at least 2, at most `auto_max_ticks`. |
645
- | `tick_spacing` | ('calc(3.5 * var(tick_font_size))', 'calc(2.5 * var(tick_font_size))') | Space per automatic tick, in tick label font sizes, on horizontal and vertical axes. Length; `%`: of the font size. |
646
- | `time_tick_spacing` | ('calc(5 * var(tick_font_size))', 'calc(2.5 * var(tick_font_size))') | `tick_spacing` of time axes. Length; `%`: of the font size. |
693
+ | `tick_spacing` | ('3em', '2em') | Space per automatic tick, in tick label font sizes, on horizontal and vertical axes. Length; `em` and `%`: of `tick_font_size`. |
694
+ | `time_tick_spacing` | ('5em', '2.5em') | `tick_spacing` of time axes. Length; `em` and `%`: of `tick_font_size`. |
695
+ | `tick_label_gap` | '0.6em' | Smallest gap between neighbouring tick labels side by side: fewer numeric ticks, or category labels rotated and thinned out, below it. Length; `em` and `%`: of `tick_font_size`. |
696
+ | `category_label_spacing` | ('1.6em', '1.3em') | Distance between category labels: rotated (horizontal axes) and stacked (vertical axes); labels closer than it are thinned out. Length; `em` and `%`: of `tick_font_size`. |
647
697
  | `auto_max_ticks` | (10, 8) | Most automatic ticks on numeric and time axes. |
648
698
  | `sci_limits` | (-4, 5) | Exponents beyond which labels become mantissas × 10ᵏ. |
649
699
  | `tick_length` | 6.0 | Tick length. Length; `%`: of the axes side across the axis. |
@@ -658,10 +708,10 @@ or the plot's `spines` is set.
658
708
  | `tick_color` | 'var(color)' | Tick color. |
659
709
  | `tick_label_color` | 'var(color)' | Tick label color. |
660
710
  | `label_color` | 'var(color)' | Axis title color. |
661
- | `label_weight` | 'normal' | Axis title weight. |
662
- | `label_style` | 'normal' | Axis title style. |
711
+ | `label_weight` | 'normal' | Axis title weight: `normal`, `bold` or 1–1000. |
712
+ | `label_style` | 'normal' | Axis title style: `normal`, `italic`, `oblique` or `"oblique 10deg"`. |
663
713
  | `side` | x: 'bottom' / y: 'left' | Where the ticks, labels and axis line go: `bottom` or `top` (x axis), `left` or `right` (y axis). |
664
- | `tick_label_weight` | 'normal' | Tick label weight. |
714
+ | `tick_label_weight` | 'normal' | Tick label weight: `normal`, `bold` or 1–1000. |
665
715
  | `mirror` | False | Ticks also on the opposite side of the axes. |
666
716
  | `spine_offset` | 0.0 | Distance the axis line (with its ticks and labels) is moved away from the axes. Length; `%`: of the axes side across the axis. |
667
717
  | `spine_trim` | False | Axis line from the first to the last major tick only. |
@@ -681,7 +731,10 @@ or the plot's `spines` is set.
681
731
  | `minor_grid_style` | 'var(grid_style)' | Minor grid style; default `grid_style`. Length. |
682
732
  | `visible` | True | Draw the axis (ticks, labels). |
683
733
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
684
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
734
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
735
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
736
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
737
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
685
738
  | `text_color` | inherited ('black') | Text color. |
686
739
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
687
740
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
@@ -778,7 +831,7 @@ the style's map); numbers in `size` are diameters, or values mapped through `siz
778
831
  | `edge_width` | 0.5 | Outline width. Length. |
779
832
  | `filled` | True | `True`: filled with the color; `False`: hollow, outlined in the color; a number: filled at that opacity and outlined in the color. |
780
833
  | `size_basis` | 'area' | `area`: shapes of the same size have the same area; `box`: size is the width of the shape's box. |
781
- | `color_map` | inherited ('viridis') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
834
+ | `color_map` | inherited ('rainbow_llhh') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
782
835
  | `size_map` | — | How numbers in `size` become sizes: a `SizeMap` (alias `smap`); without it, numbers are sizes in px. |
783
836
  | `size_legend` | True | With a `size_map`: a size key in the legend (`True`), none (`False`), or the values to show (a list). |
784
837
  | `order` | — | Drawing order: `"density"` (densest drawn last), `"-density"`, or sort keys per point (ascending); default: call order. |
@@ -791,8 +844,11 @@ the style's map); numbers in `size` are diameters, or values mapped through `siz
791
844
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
792
845
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
793
846
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
794
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
847
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
795
848
  | `text_color` | inherited ('black') | Text color. |
849
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
850
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
851
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
796
852
  <!-- /settings -->
797
853
 
798
854
  ### Line
@@ -839,8 +895,11 @@ Named line styles scale with the width. Markers (`marker`, `marker_size`,
839
895
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
840
896
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
841
897
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
842
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
898
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
843
899
  | `text_color` | inherited ('black') | Text color. |
900
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
901
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
902
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
844
903
  <!-- /settings -->
845
904
 
846
905
  ### Fill
@@ -868,8 +927,11 @@ x, y1 or y2 is), so a band with the settings of its line matches it. With
868
927
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
869
928
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
870
929
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
871
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
930
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
872
931
  | `text_color` | inherited ('black') | Text color. |
932
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
933
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
934
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
873
935
  <!-- /settings -->
874
936
 
875
937
  ### Box
@@ -890,7 +952,7 @@ category.
890
952
  | Setting | Default | Meaning |
891
953
  |---|---|---|
892
954
  | `color` | — | Box fill: a color, one per box (list or dict by category), or numbers per box (list or dict) mapped through `color_map`; default: the next palette color. |
893
- | `color_map` | inherited ('viridis') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
955
+ | `color_map` | inherited ('rainbow_llhh') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
894
956
  | `edge_color` | 'black' | Box outline, whiskers, caps and median: a color, `"series"` (each box's own color) or `"auto"` (a grey 0.6 × as light as the series' lightest color, as seaborn). |
895
957
  | `whisker_color` | — | Whisker and cap color; default `edge_color`. |
896
958
  | `whisker_style` | 'solid' | Whisker line style: `solid`, `dashed`, `dotted`, `dashdot` or a dash list (caps stay solid). Length. |
@@ -923,8 +985,11 @@ category.
923
985
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
924
986
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
925
987
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
926
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
988
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
927
989
  | `text_color` | inherited ('black') | Text color. |
990
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
991
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
992
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
928
993
  <!-- /settings -->
929
994
 
930
995
  ### Heatmap
@@ -945,7 +1010,7 @@ all cells), in black or white, whichever contrasts more (at most 2,500 cells unl
945
1010
  <!-- settings:Heatmap -->
946
1011
  | Setting | Default | Meaning |
947
1012
  |---|---|---|
948
- | `color_map` | inherited ('viridis') | A `ColorMap`, a map name or a list of colors. |
1013
+ | `color_map` | inherited ('rainbow_llhh') | A `ColorMap`, a map name or a list of colors. |
949
1014
  | `color_limits` | — | Override of the map's limits for this series. |
950
1015
  | `color_scale` | — | Override of the map's scale. |
951
1016
  | `mode` | 'image' | `image` (one image pixel per cell), `cells` (rectangles) or `smooth` (interpolated). |
@@ -961,8 +1026,11 @@ all cells), in black or white, whichever contrasts more (at most 2,500 cells unl
961
1026
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
962
1027
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
963
1028
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
964
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1029
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
965
1030
  | `text_color` | inherited ('black') | Text color. |
1031
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1032
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1033
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
966
1034
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
967
1035
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
968
1036
  | `minus` | inherited ('hyphen') | `hyphen` (`-`) or `minus` (U+2212, from an installed font). |
@@ -983,7 +1051,7 @@ pl.Bar(x, height=None, plot=None, **settings)
983
1051
  | Setting | Default | Meaning |
984
1052
  |---|---|---|
985
1053
  | `color` | — | Bar fill: a color, one per bar (list or dict by category), or numbers per bar (list or dict) mapped through `color_map`; default: the next palette color. |
986
- | `color_map` | inherited ('viridis') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
1054
+ | `color_map` | inherited ('rainbow_llhh') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
987
1055
  | `edge_color` | — | Outline color; default none. |
988
1056
  | `edge_width` | 0.0 | Outline width. Length. |
989
1057
  | `width` | 0.8 | Bar width: a category's slot (category units) or data units (a `timedelta` on time axes). Length; bare numbers: data units. |
@@ -1004,8 +1072,11 @@ pl.Bar(x, height=None, plot=None, **settings)
1004
1072
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1005
1073
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1006
1074
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1007
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1075
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1008
1076
  | `text_color` | inherited ('black') | Text color. |
1077
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1078
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1079
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1009
1080
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
1010
1081
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
1011
1082
  | `minus` | inherited ('hyphen') | `hyphen` (`-`) or `minus` (U+2212, from an installed font). |
@@ -1049,8 +1120,11 @@ pl.Hist(values, plot=None, **settings)
1049
1120
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1050
1121
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1051
1122
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1052
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1123
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1053
1124
  | `text_color` | inherited ('black') | Text color. |
1125
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1126
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1127
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1054
1128
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
1055
1129
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
1056
1130
  | `minus` | inherited ('hyphen') | `hyphen` (`-`) or `minus` (U+2212, from an installed font). |
@@ -1089,8 +1163,11 @@ A Gaussian kernel density of each set on a common grid of `grid` points, extendi
1089
1163
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1090
1164
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1091
1165
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1092
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1166
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1093
1167
  | `text_color` | inherited ('black') | Text color. |
1168
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1169
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1170
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1094
1171
  <!-- /settings -->
1095
1172
 
1096
1173
  ### Kde2d
@@ -1114,7 +1191,7 @@ labels, colorbar).
1114
1191
  |---|---|---|
1115
1192
  | `filled` | False | Fill the bands between levels. |
1116
1193
  | `lines` | True | Draw the iso-lines. |
1117
- | `color_map` | inherited ('viridis') | Color map of the levels. |
1194
+ | `color_map` | inherited ('rainbow_llhh') | Color map of the levels. |
1118
1195
  | `colors` | — | Line color, or one per level, instead of the map. |
1119
1196
  | `line_width` | 'calc(0.6 * var(line_width))' | Line width; default 0.6 × the plot's. Length. |
1120
1197
  | `line_style` | 'solid' | Line style. Length. |
@@ -1128,8 +1205,11 @@ labels, colorbar).
1128
1205
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1129
1206
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1130
1207
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1131
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1208
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1132
1209
  | `text_color` | inherited ('black') | Text color. |
1210
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1211
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1212
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1133
1213
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
1134
1214
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
1135
1215
  | `minus` | inherited ('hyphen') | `hyphen` (`-`) or `minus` (U+2212, from an installed font). |
@@ -1170,8 +1250,11 @@ A step line through the sorted values of each set: `stat` `proportion`, `count`
1170
1250
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1171
1251
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1172
1252
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1173
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1253
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1174
1254
  | `text_color` | inherited ('black') | Text color. |
1255
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1256
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1257
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1175
1258
  <!-- /settings -->
1176
1259
 
1177
1260
  ### Violin
@@ -1186,7 +1269,7 @@ pl.Violin(values, positions=None, plot=None, **settings)
1186
1269
  | Setting | Default | Meaning |
1187
1270
  |---|---|---|
1188
1271
  | `color` | — | Fill: a color, one per violin (list or dict by category), or numbers per violin mapped through `color_map`; default the next palette color. |
1189
- | `color_map` | inherited ('viridis') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
1272
+ | `color_map` | inherited ('rainbow_llhh') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
1190
1273
  | `edge_color` | '#333333' | Outline and inner color. |
1191
1274
  | `edge_width` | 0.75 | Outline width. Length. |
1192
1275
  | `saturation` | 1.0 | Saturation of the fills. |
@@ -1208,8 +1291,11 @@ pl.Violin(values, positions=None, plot=None, **settings)
1208
1291
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1209
1292
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1210
1293
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1211
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1294
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1212
1295
  | `text_color` | inherited ('black') | Text color. |
1296
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1297
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1298
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1213
1299
  <!-- /settings -->
1214
1300
 
1215
1301
  ### Strip and swarm
@@ -1231,7 +1317,7 @@ Points of each category's values: `Strip` spreads them by uniform jitter (± `ji
1231
1317
  | `edge_width` | 0.5 | Outline width. Length. |
1232
1318
  | `filled` | True | `True`: filled with the color; `False`: hollow, outlined in the color; a number: filled at that opacity and outlined in the color. |
1233
1319
  | `size_basis` | 'area' | `area`: shapes of the same size have the same area; `box`: size is the width of the shape's box. |
1234
- | `color_map` | inherited ('viridis') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
1320
+ | `color_map` | inherited ('rainbow_llhh') | How numbers in `color` become colors: a `ColorMap`, a map name or colors (alias `cmap`); default: the style's. |
1235
1321
  | `size_map` | — | How numbers in `size` become sizes: a `SizeMap` (alias `smap`); without it, numbers are sizes in px. |
1236
1322
  | `size_legend` | True | With a `size_map`: a size key in the legend (`True`), none (`False`), or the values to show (a list). |
1237
1323
  | `orientation` | 'vertical' | `vertical` (categories on x) or `horizontal`. |
@@ -1249,8 +1335,11 @@ Points of each category's values: `Strip` spreads them by uniform jitter (± `ji
1249
1335
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1250
1336
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1251
1337
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1252
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1338
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1253
1339
  | `text_color` | inherited ('black') | Text color. |
1340
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1341
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1342
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1254
1343
  <!-- /settings -->
1255
1344
 
1256
1345
  ### Area
@@ -1277,8 +1366,11 @@ Layers (rows of `ys`, or a dict `{name: values}`, one legend entry each) stacked
1277
1366
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1278
1367
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1279
1368
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1280
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1369
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1281
1370
  | `text_color` | inherited ('black') | Text color. |
1371
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1372
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1373
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1282
1374
  <!-- /settings -->
1283
1375
 
1284
1376
  ### Errorbar
@@ -1312,8 +1404,11 @@ Error bars on their own (markers only with `marker=`); `y_error_style="band"` fi
1312
1404
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1313
1405
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1314
1406
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1315
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1407
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1316
1408
  | `text_color` | inherited ('black') | Text color. |
1409
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1410
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1411
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1317
1412
  <!-- /settings -->
1318
1413
 
1319
1414
  ### Stem
@@ -1346,8 +1441,11 @@ Stems from `baseline` to each value with a marker (lollipops), and a baseline li
1346
1441
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1347
1442
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1348
1443
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1349
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1444
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1350
1445
  | `text_color` | inherited ('black') | Text color. |
1446
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1447
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1448
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1351
1449
  <!-- /settings -->
1352
1450
 
1353
1451
  ### Regression
@@ -1386,8 +1484,11 @@ A least-squares polynomial of `order` with the confidence band of the mean (Stud
1386
1484
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1387
1485
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1388
1486
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1389
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1487
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1390
1488
  | `text_color` | inherited ('black') | Text color. |
1489
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1490
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1491
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1391
1492
  <!-- /settings -->
1392
1493
 
1393
1494
  ### Hist2d
@@ -1401,7 +1502,7 @@ Counts in rectangular bins (even on the axis scales), drawn as a heatmap with th
1401
1502
  <!-- settings:Hist2d -->
1402
1503
  | Setting | Default | Meaning |
1403
1504
  |---|---|---|
1404
- | `color_map` | inherited ('viridis') | A `ColorMap`, a map name or a list of colors. |
1505
+ | `color_map` | inherited ('rainbow_llhh') | A `ColorMap`, a map name or a list of colors. |
1405
1506
  | `color_limits` | — | Override of the map's limits for this series. |
1406
1507
  | `color_scale` | — | Override of the map's scale. |
1407
1508
  | `mode` | 'image' | `image` (one image pixel per cell), `cells` (rectangles) or `smooth` (interpolated). |
@@ -1416,8 +1517,11 @@ Counts in rectangular bins (even on the axis scales), drawn as a heatmap with th
1416
1517
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1417
1518
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1418
1519
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1419
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1520
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1420
1521
  | `text_color` | inherited ('black') | Text color. |
1522
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1523
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1524
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1421
1525
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
1422
1526
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
1423
1527
  | `minus` | inherited ('hyphen') | `hyphen` (`-`) or `minus` (U+2212, from an installed font). |
@@ -1450,7 +1554,7 @@ aspect (and the counts depend on it). Points outside the axes are not counted. C
1450
1554
  | `weights` | — | A weight per point (sums). |
1451
1555
  | `stat` | 'count' | `count`, `probability` or `percent`. |
1452
1556
  | `min_count` | 1.0 | Hexagons below this count are not drawn. |
1453
- | `color_map` | inherited ('viridis') | A `ColorMap`, a map name or colors. |
1557
+ | `color_map` | inherited ('rainbow_llhh') | A `ColorMap`, a map name or colors. |
1454
1558
  | `color_limits` | — | Override of the map's limits. |
1455
1559
  | `color_scale` | — | Override of the map's scale. |
1456
1560
  | `edge_color` | — | Hexagon outline color; default none. |
@@ -1462,8 +1566,11 @@ aspect (and the counts depend on it). Points outside the axes are not counted. C
1462
1566
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1463
1567
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1464
1568
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1465
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1569
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1466
1570
  | `text_color` | inherited ('black') | Text color. |
1571
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1572
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1573
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1467
1574
  <!-- /settings -->
1468
1575
 
1469
1576
  ### Contour
@@ -1480,7 +1587,7 @@ Iso-lines (`lines`) and filled bands (`filled`) of a grid at nodes `x`/`y`. `lev
1480
1587
  | `levels` | 10 | A number of levels (nice values over the data) or the level values. |
1481
1588
  | `filled` | False | Fill the bands between levels. |
1482
1589
  | `lines` | True | Draw the iso-lines. |
1483
- | `color_map` | inherited ('viridis') | Color map of the levels. |
1590
+ | `color_map` | inherited ('rainbow_llhh') | Color map of the levels. |
1484
1591
  | `colors` | — | Line color, or one per level, instead of the map. |
1485
1592
  | `line_width` | 'calc(0.6 * var(line_width))' | Line width; default 0.6 × the plot's. Length. |
1486
1593
  | `line_style` | 'solid' | Line style. Length. |
@@ -1495,8 +1602,11 @@ Iso-lines (`lines`) and filled bands (`filled`) of a grid at nodes `x`/`y`. `lev
1495
1602
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1496
1603
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1497
1604
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1498
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1605
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1499
1606
  | `text_color` | inherited ('black') | Text color. |
1607
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1608
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1609
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1500
1610
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
1501
1611
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
1502
1612
  | `minus` | inherited ('hyphen') | `hyphen` (`-`) or `minus` (U+2212, from an installed font). |
@@ -1525,6 +1635,7 @@ Wedges of `values` (a sequence or a dict `{label: value}`) from `start`, on a pl
1525
1635
  | `sort` | False | Sort the wedges by decreasing value. |
1526
1636
  | `label_position` | 'outside' | Where the names go: `outside`, `inside` or `none` (in the legend instead). |
1527
1637
  | `value_labels` | False | Write each wedge's `percent` or `value` inside it (outside, with a leader line, when it does not fit). |
1638
+ | `label_spacing` | '1.25em' | Smallest distance between outside labels on a side. Length; `%`: of the font size. |
1528
1639
  | `label_format` | 'auto' | Number format of the value labels (percentages: of 100). |
1529
1640
  | `edge_color` | 'white' | Wedge outline color; `none`: no outline. |
1530
1641
  | `edge_width` | 1.25 | Wedge outline width. Length. |
@@ -1534,8 +1645,11 @@ Wedges of `values` (a sequence or a dict `{label: value}`) from `start`, on a pl
1534
1645
  | `rasterize` | inherited (False) | `True` or a dpi: drawn as an image inside the PDF. |
1535
1646
  | `simplify` | inherited ('auto') | `"auto"`, `True`, a dpi or `False`: pdf_io's `simplify`. |
1536
1647
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1537
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1648
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1538
1649
  | `text_color` | inherited ('black') | Text color. |
1650
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1651
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1652
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1539
1653
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
1540
1654
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
1541
1655
  | `minus` | inherited ('hyphen') | `hyphen` (`-`) or `minus` (U+2212, from an installed font). |
@@ -1572,7 +1686,10 @@ side, so axes stay aligned. A bar in its own area runs along the neighbouring ax
1572
1686
  | `frame_color` | '#666666' | Outline color. |
1573
1687
  | `frame_width` | 0.5 | Outline width. Length. |
1574
1688
  | `font_size` | inherited (11.0) | Base font size. Length; `%`: of the parent's font size. |
1575
- | `font_family` | inherited ('SF Pro Text, Inter, Helvetica, Arial, sans-serif') | Font family. |
1689
+ | `font_family` | inherited ('SF Pro, Inter, Helvetica, Arial, sans-serif') | Font family. |
1690
+ | `font_stretch` | inherited ('normal') | Font width: `normal`, `condensed`, …, or a percentage (`"87.5%"`); the `wdth` axis of variable fonts. |
1691
+ | `font_variations` | inherited (None) | Variable font axes: `{"GRAD": 50}` or `'"GRAD" 50, "wght" 650'`. |
1692
+ | `font_optical_sizing` | inherited ('auto') | `auto`: a variable font's `opsz` axis follows the font size; `none`. |
1576
1693
  | `text_color` | inherited ('black') | Text color. |
1577
1694
  | `decimal_separator` | inherited ('.') | Decimal separator of numbers (`"."`). |
1578
1695
  | `thousands_separator` | inherited ('') | Thousands separator (`""`: none). |
@@ -1592,14 +1709,25 @@ default palette `pl.PALETTE` (`"okabe_ito"`) is Okabe–Ito's eight colorblind-s
1592
1709
  plus indigo and dark brown, chosen as the pair farthest from every other color (in Oklab)
1593
1710
  under normal and simulated protan, deutan and tritan vision.
1594
1711
 
1595
- `palette` takes a list of colors, a registered name, or a function `n -> colors`, called
1596
- with the number of series of the plot that take a palette color.
1712
+ `palette` takes a `pl.Palette`, a registered name (`"tab10"`; `"tab10_r"` reversed), a
1713
+ list of colors (or one comma-separated string: `"red, teal 0.7"`), or a function `n -> colors`, called with the number of series of the plot
1714
+ that take a palette color.
1597
1715
 
1598
1716
  ```python
1599
- pl.register_palette(name, colors_or_function)
1717
+ pl.Palette(colors="okabe_ito", name=None) # a name, colors, a Palette or n -> colors
1718
+ pl.register_palette(name, palette) # a Palette, colors or a function
1600
1719
  pl.palette_names()
1601
1720
  ```
1602
1721
 
1722
+ | `Palette` | |
1723
+ |---|---|
1724
+ | `colors(n=None)` | the colors: all, or `n` (a list repeats, as series reuse it; a function is called with `n`) |
1725
+ | `len(p)`, `p[i]`, `p[a:b]`, `iter(p)` | lists only: count; a color (indices wrap); a sub-palette |
1726
+ | `reversed()`, `lighter(k=0.25)`, `darker(k=0.25)` | copies: reversed; each color moved by `k` toward white or black in Oklab |
1727
+
1728
+ `ColorMap.to_palette(n)` samples a gradient into `n` colors, at the centers of `n` equal
1729
+ parts: `palette=pl.ColorMap("viridis").to_palette(5)` for ordered categories.
1730
+
1603
1731
  | Palette | Colors |
1604
1732
  |---|---|
1605
1733
  | `okabe_ito` | plot_io's default (10) |
@@ -1616,33 +1744,55 @@ pl.palette_names()
1616
1744
  | `economist` | The Economist (ggthemes, pre-2017) (10) |
1617
1745
  | `fivethirtyeight` | matplotlib's fivethirtyeight style (6) |
1618
1746
  | `greys` | black to light grey (4) |
1747
+ | `set1`, `set2`, `set3`, `paired`, `accent`, `dark2`, `pastel1`, `pastel2` | ColorBrewer's qualitative schemes by Brewer (Apache-2.0) (8–12) |
1748
+ | `batlow`, `batlowk`, `batloww`, `devon`, `lajolla`, `bamako`, `davos`, `bilbao`, `nuuk`, `oslo`, `grayc`, `hawaii`, `lapaz`, `tokyo`, `buda`, `acton`, `turku`, `imola`, `glasgow`, `lipari`, `navia` | Crameri's categorical Scientific colour maps 8 (MIT): the first colors differ most (100) |
1619
1749
 
1620
1750
  ### Color maps
1621
1751
 
1622
1752
  ```python
1623
- pl.ColorMap(colors="viridis", positions=None, limits="auto", scale="linear",
1624
- under=None, over=None, bad=None, space=None, name=None)
1753
+ pl.ColorMap(colors="rainbow_llhh", positions=None, limits="auto", scale="linear",
1754
+ under=None, over=None, bad=None, space=None, name=None, interpolation=None,
1755
+ widen_colors=1, widen_sides=1.0)
1625
1756
  pl.register_color_map(name, color_map)
1626
1757
  pl.color_map_names()
1627
1758
  ```
1628
1759
 
1629
1760
  | Member | |
1630
1761
  |---|---|
1631
- | `colors` | a name (`viridis`, `magma`, `inferno`, `plasma`, `cividis`, `coolwarm`, `grey`, `rocket`, `mako`, `flare`, `crest`, `vlag`, `icefire`, `jet`, `parula`, `turbo`, `ylgnbu`, `blues`, `ggplot2`; `_r` reverses), a list of colors (evenly spaced or at `positions`), a `ColorMap` (copied) or a function `t -> color` |
1762
+ | `colors` | a name (`viridis`, `magma`, `inferno`, `plasma`, `cividis`, `coolwarm`, `grey`, `rocket`, `mako`, `flare`, `crest`, `vlag`, `icefire`, `jet`, `parula`, `turbo`, `ggplot2`, the rainbows, ColorBrewer's and Crameri's maps below, in any case (`"RdBu"`, `"batlowK"`); `_r` reverses), a list of colors (evenly spaced or at `positions`; or one string, comma-separated: `"violet 0.4, sky 0.4, green 0.4"`), a `ColorMap` (copied) or a function `t -> color` |
1632
1763
  | `limits`, `scale` | axis syntax, applied to the mapped values; `"auto"` covers every series using the map |
1633
1764
  | `under`, `over`, `bad` | colors below/above the limits (default: the end colors) and of missing values (default: transparent) |
1634
- | `space` | `"oklab"` (default for color lists: perceptually even) or `"srgb"` (bundled maps, whose stops are already a dense perceptual sampling) |
1765
+ | `space` | interpolation between the colors: `"oklab"` (default, for every map: perceptually even) or `"srgb"` |
1766
+ | `interpolation` | `"linear"` (default): between neighboring colors; `"nearest"`: equal steps, one per color (`n` colors, `n` bins; with `positions`, each step starts at its position); `"smooth"`: a Bézier curve with the colors as control points, through the first and last only (no `positions`); `"spline"`: a monotone cubic curve through every color (PCHIP in Oklab: no overshoot between colors) |
1767
+ | `widen_colors`, `widen_sides` | each inner color of a list repeated `widen_colors` times, each end color `round(widen_sides × widen_colors)` times: wider bands around the colors |
1635
1768
  | `cm(t)`, `colors_at(ts)` | color at t ∈ [0, 1]; bulk colors (C) |
1636
1769
  | `reversed()`, `resampled(n)`, `truncated(lo, hi)`, `with_extremes(…)` | copies: reversed; n flat steps; a part stretched to [0, 1]; new extremes |
1637
- | `to_pdf_io()` | the equivalent pdf_io color map (Oklab maps as 256 sRGB stops) |
1770
+ | `to_palette(n)` | a `Palette` of `n` colors sampled at the centers of `n` equal parts |
1771
+ | `to_pdf_io()` | the equivalent pdf_io color map (maps with fewer than 256 colors as 256 sRGB stops) |
1638
1772
 
1639
1773
  Bundled data: viridis, magma, inferno and plasma by van der Walt and Smith (CC0); cividis
1640
1774
  by Nuñez, Anderton and Renslow; coolwarm by Moreland; rocket, mako, flare, crest, vlag and
1641
1775
  icefire from seaborn by Waskom (BSD-3-Clause); jet from matplotlib; a parula-like map;
1642
- turbo by Mikhailov (Google, Apache-2.0); YlGnBu and Blues from ColorBrewer by Brewer
1643
- (Apache-2.0);
1644
- `ggplot2` is ggplot2's continuous default (`#132B43` → `#56B1F7`, Oklab). The
1645
- `color_map` setting (alias `cmap`; inherited, default `"viridis"`) is the map of heatmaps,
1776
+ turbo by Mikhailov (Google, Apache-2.0);
1777
+ the rainbows, built from named colors with `widen_colors=6, widen_sides=0.6` and
1778
+ `interpolation="smooth"` (violet, sky,
1779
+ green, yellow, orange, rose): `rainbow` (all at level 0.4), `rainbow_neutral` (0.5),
1780
+ `rainbow_l0hh` (from white, then levels 0.1 to 0.6), `rainbow_llhh` (0.16 to 0.6),
1781
+ `rainbow_llh` (0.16 to 0.4), `rainbow_hlh` (dark ends, light middle); diverging maps from
1782
+ named colors: `blue_white_red` (sky, white, rose), `blue_white_red_hc` (levels 0.6 at the
1783
+ ends), `blue_gray_red` (a gray 0.2 middle), `blue_gray_red_hc`;
1784
+ ColorBrewer's schemes by Brewer (Apache-2.0): sequential `blues`, `bugn`, `bupu`, `gnbu`,
1785
+ `greens`, `greys`, `oranges`, `orrd`, `pubu`, `pubugn`, `purd`, `purples`, `rdpu`, `reds`,
1786
+ `ylgn`, `ylgnbu`, `ylorbr`, `ylorrd` (9 colors) and diverging `brbg`, `piyg`, `prgn`, `puor`,
1787
+ `rdbu`, `rdgy`, `rdylbu`, `rdylgn`, `spectral` (11 colors); Crameri's Scientific colour maps
1788
+ 8 (MIT; Crameri, Shephard and Heron 2020): sequential `batlow`, `batlowk`, `batloww`,
1789
+ `devon`, `lajolla`, `bamako`, `davos`, `bilbao`, `nuuk`, `oslo`, `grayc`, `hawaii`, `lapaz`,
1790
+ `tokyo`, `buda`, `acton`, `turku`, `imola`, `glasgow`, `lipari`, `navia`, diverging `broc`,
1791
+ `cork`, `vik`, `lisbon`, `tofino`, `berlin`, `roma`, `bam`, `vanimo`, `managua`,
1792
+ multi-sequential `oleron`, `bukavu`, `fes` and cyclic `romao`, `bamo`, `broco`, `corko`,
1793
+ `viko` (256 colors each);
1794
+ `ggplot2` is ggplot2's continuous default (`#132B43` → `#56B1F7`). The
1795
+ `color_map` setting (alias `cmap`; inherited, default `"rainbow_llhh"`) is the map of heatmaps,
1646
1796
  contours and numbers given as colors. One `ColorMap` object given to several series
1647
1797
  shares its `"auto"` limits.
1648
1798
 
@@ -1891,9 +2041,9 @@ documented default properties. What cannot be expressed: legend titles naming a
1891
2041
  | `slots.py`, `stacking.py`, `labels.py`, `shapes.py` | category slots, stacking, value labels, bulk rectangles and polygons |
1892
2042
  | `stats.py` | bins, densities, contours, LOWESS and swarm layout (pdf_io's C helpers) |
1893
2043
  | `decorations.py` | reference lines, spans, text and annotations |
1894
- | `maps/` | `ColorMap`, `SizeMap`, Oklab, bundled map data |
1895
- | `markers.py`, `style.py`, `text.py` | marker shapes, palette references and dashes, rich one-line text |
1896
- | `palettes.py` | palette registry, bundled palettes, ggplot2's hues (CIE LCh(uv)) |
2044
+ | `color/` | colors: `values.py` (the `color` validator, named color scales, palette references, alpha, saturation, luminance), `palettes.py` (palettes: the discrete colors series take in turn; registry, ggplot2's hues), `maps.py` (`ColorMap`: gradients numbers are mapped onto; Oklab from pdf_io), `data.py` (bundled map and palette colors) |
2045
+ | `sizemaps.py` | `SizeMap`: values to marker diameters |
2046
+ | `markers.py`, `lines.py`, `text.py` | marker shapes, line dash styles, rich one-line text |
1897
2047
  | `styles/` | style registry and expansion; bundled styles (point libraries in `pt`) |
1898
2048
  | `values.py`, `density.py` | values given to `color`/`size` and their rules; `Density` (point density) |
1899
2049
  | `tables.py`, `facets.py` | columns of tables, `group=` splitting (`SeriesGroup`); `facet` |