lets-plot 4.6.0a2__cp312-cp312-macosx_11_0_arm64.whl → 4.6.1__cp312-cp312-macosx_11_0_arm64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of lets-plot might be problematic. Click here for more details.

lets_plot/plot/theme_.py CHANGED
@@ -10,6 +10,7 @@ __all__ = [
10
10
  "element_line",
11
11
  'element_rect',
12
12
  'element_text',
13
+ 'element_markdown',
13
14
  'margin',
14
15
  'element_geom',
15
16
  ]
@@ -48,12 +49,11 @@ def theme(*,
48
49
  legend_key_size=None, legend_key_width=None, legend_key_height=None,
49
50
  legend_key_spacing=None, legend_key_spacing_x=None, legend_key_spacing_y=None,
50
51
  legend_box=None, legend_box_just=None, legend_box_spacing=None,
51
- # ToDo: other legend options...
52
+ legend_ticks=None, legend_ticks_length=None,
52
53
 
53
54
  panel_background=None,
54
55
  panel_border=None,
55
56
  panel_border_ontop=None,
56
- # ToDo: other panel options...
57
57
 
58
58
  panel_grid=None,
59
59
  panel_grid_ontop=None,
@@ -221,6 +221,14 @@ def theme(*,
221
221
  Justification of each legend within the overall bounding box, when there are multiple legends.
222
222
  legend_box_spacing : float
223
223
  Spacing between plotting area and legend box.
224
+ legend_ticks : str or dict
225
+ Tick marks in colorbars.
226
+ Set 'blank' or result of `element_blank()` to draw nothing and assign no space.
227
+ Set `element_line()` to specify all tick mark parameters.
228
+ `legend_ticks_*` DOES NOT inherit from `line`.
229
+ By default, the colorbar tick marks are drawn with the same color as the colorbar background.
230
+ legend_ticks_length : float
231
+ Length of colorbar tick marks in px.
224
232
  panel_background : str or dict
225
233
  Background of plotting area.
226
234
  Set 'blank' or result of `element_blank()` to draw nothing.
@@ -593,12 +601,11 @@ def element_text(
593
601
  Can be used with values out of range, but behaviour is not specified.
594
602
  margin : number or list of numbers
595
603
  Margins around the text.
596
-
597
604
  The margin may be specified using a number or a list of numbers:
605
+
598
606
  - a number or list of one number - the same margin it applied to all four sides;
599
607
  - a list of two numbers - the first margin applies to the top and bottom, the second - to the left and right;
600
- - a list of three numbers - the first margin applies to the top, the second - to the right and left,
601
- the third - to the bottom;
608
+ - a list of three numbers - the first margin applies to the top, the second - to the right and left, the third - to the bottom;
602
609
  - a list of four numbers - the margins are applied to the top, right, bottom and left in that order.
603
610
 
604
611
  It is acceptable to use None for any side; in this case, the default side value for this element will be used.
@@ -628,6 +635,87 @@ def element_text(
628
635
  return locals()
629
636
 
630
637
 
638
+ def element_markdown(
639
+ color=None,
640
+ family=None,
641
+ face=None,
642
+ size=None,
643
+ angle=None,
644
+ # ToDo: lineheight
645
+ hjust=None,
646
+ vjust=None,
647
+ margin=None,
648
+ blank=False,
649
+ ) -> dict:
650
+ """
651
+ Specify how non-data components of the plot are drawn.
652
+ This theme element draws texts with Markdown support.
653
+
654
+ Parameters
655
+ ----------
656
+ color : str
657
+ Text color.
658
+ family : str
659
+ Font family.
660
+ face : {'plain', 'italic', 'bold', 'bold_italic'}, default='plain'
661
+ Font face.
662
+ size : int
663
+ Text size in px.
664
+ angle : float
665
+ Angle to rotate the text (in degrees).
666
+ hjust : float
667
+ Horizontal justification (in [0, 1]).
668
+ 0 - left-justified;
669
+ 1 - right-justified;
670
+ 0.5 - center-justified.
671
+ Can be used with values out of range, but behaviour is not specified.
672
+ vjust : float
673
+ Vertical justification (in [0, 1]).
674
+ 0 - bottom-justified;
675
+ 1 - top-justified;
676
+ 0.5 - middle-justified.
677
+ Can be used with values out of range, but behaviour is not specified.
678
+ margin : number or list of numbers
679
+ Margins around the text.
680
+ The margin may be specified using a number or a list of numbers:
681
+
682
+ - a number or list of one number - the same margin it applied to all four sides;
683
+ - a list of two numbers - the first margin applies to the top and bottom, the second - to the left and right;
684
+ - a list of three numbers - the first margin applies to the top, the second - to the right and left, the third - to the bottom;
685
+ - a list of four numbers - the margins are applied to the top, right, bottom and left in that order.
686
+
687
+ It is acceptable to use None for any side; in this case, the default side value for this element will be used.
688
+ blank : bool, default=False
689
+ If True - draws nothing, and assigns no space.
690
+
691
+ Returns
692
+ -------
693
+ `dict`
694
+ Theme element specification.
695
+
696
+ Examples
697
+ --------
698
+ .. jupyter-execute::
699
+ :linenos:
700
+ :emphasize-lines: 12
701
+
702
+ from lets_plot import *
703
+ LetsPlot.setup_html()
704
+ ggplot() + \\
705
+ geom_blank() + \\
706
+ labs(
707
+ title='*Hello*, **world**',
708
+ subtitle='_Simple plot_',
709
+ caption='*Powered by **lets-plot***',
710
+ x='Title **X**',
711
+ y='Title **Y**'
712
+ ) + \\
713
+ theme(title=element_markdown())
714
+
715
+ """
716
+ return {'markdown': True, **locals()}
717
+
718
+
631
719
  def margin(t=None, r=None, b=None, l=None):
632
720
  """
633
721
  Function `margin()` is deprecated.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: lets-plot
3
- Version: 4.6.0a2
3
+ Version: 4.6.1
4
4
  Summary: An open source library for statistical plotting
5
5
  Home-page: https://lets-plot.org
6
6
  Author: JetBrains
@@ -102,45 +102,34 @@ Also read:
102
102
  - [Scientific mode in PyCharm](https://www.jetbrains.com/help/pycharm/matplotlib-support.html)
103
103
  - [Scientific mode in IntelliJ IDEA](https://www.jetbrains.com/help/idea/matplotlib-support.html)
104
104
 
105
- ## What is new in 4.5.0
105
+ ## What is new in 4.6.0
106
106
 
107
- - #### Panning and Zooming
108
- <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-24g/images/ggtb.png" alt="f-24g/images/ggtb.png" width="300" height="134">
107
+ - #### Markdown Support in *Title*, *Subtitle*, *Caption*, and Axis Labels
108
+ <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-25a/images/markdown.png" alt="f-25a/images/markdown.png" width="400" height="237">
109
109
 
110
- See [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-24g/interact_pan_zoom.ipynb).
110
+ See [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25a/markdown.ipynb).
111
111
 
112
- - #### Clickable Links
113
- <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-24g/images/lp_verse.png" alt="f-24g/images/lp_verse.png" width="400" height="270">
112
+ - #### Support for Multiline Axis Labels, Text Justification in Axis Labels
113
+ <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-25a/images/multiline_axis_labels.png" alt="f-25a/images/multiline_axis_labels.png" width="400" height="275">
114
114
 
115
- See [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-24g/interactive_links.ipynb).
115
+ See examples: [multiline axis labels](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25a/multiline_axis_labels.ipynb),
116
+ [axis label justification](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25a/axis_label_justification.ipynb),
116
117
 
117
- - #### LaTeX Support: Subscript, Superscript, Greek Letters and Special Characters
118
- <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-24g/images/latex.png" alt="f-24g/images/latex.png" width="300" height="227">
118
+ - #### `geom_hex()` Geometry
119
+ <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-25a/images/geom_hex.png" alt="f-25a/images/geom_hex.png" width="370" height="296">
119
120
 
120
- See [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-24g/latex_support.ipynb).
121
+ See [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25a/geom_hex.ipynb).
121
122
 
122
- > [!CAUTION]
123
- > Subscripts and superscripts are not supported in PDF and PNG exports.
124
-
125
- - #### Compact Scientific Notation Formatting
126
- <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-24g/images/compact_exp.png" alt="f-24g/images/compact_exp.png" width="400" height="174">
123
+ - #### `ggbunch()` Function: Combining Plots with Custom Layout
124
+ It replaces the deprecated `GGBunch` class. <br/>
125
+ <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-25a/images/ggbunch_indonesia.png" alt="f-25a/images/ggbunch_indonesia.png" width="400" height="164">
127
126
 
128
- See [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-24g/superscript_exponent.ipynb).
129
-
130
- > [!CAUTION]
131
- > `pow` and `pow_full` options are not supported in PDF and PNG exports.
132
-
133
- - #### QQ-Plot: Marginal Distributions
134
- <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-24g/images/gg_marins.png" alt="f-24g/images/gg_marins.png" width="400" height="249">
135
-
136
- See [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-24g/qq_plot_marginal.ipynb).
127
+ See [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25a/ggbunch_indonesia.ipynb).
137
128
 
138
- - #### More Theme Settings
139
- <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-24g/images/theme_legend_scheme.png" alt="f-24g/images/theme_legend_scheme.png" width="400" height="320">
129
+ - #### Parameters `start` and `direction` in `geom_pie()` Geometry
130
+ <img src="https://raw.githubusercontent.com/JetBrains/lets-plot/master/docs/f-25a/images/geom_pie_params.png" alt="f-25a/images/geom_pie_params.png" width="400" height="119">
140
131
 
141
- See examples: [legend margins](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-24g/theme_legend_margins.ipynb),
142
- [legend key](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-24g/theme_legend_key.ipynb),
143
- [facet strip](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-24g/theme_facet_strip_xy.ipynb).
132
+ See [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25a/geom_pie_params.ipynb).
144
133
 
145
134
 
146
135
  - #### And More
@@ -1,9 +1,9 @@
1
- lets_plot_kotlin_bridge.cpython-312-darwin.so,sha256=jZIFDwhxUDE_6RZg-d6xzIkfgXa8FvMQ8jPGcIUGFn4,9421792
1
+ lets_plot_kotlin_bridge.cpython-312-darwin.so,sha256=Z8VFPR5FV3V6ZoiasADwol-Ti6KosSH3Axl0qH-4ZdY,9540272
2
2
  lets_plot/__init__.py,sha256=JBXXtPi4nwhU9jrsUXcQTP1iaGF0jbHBVk_66pohq9I,11224
3
3
  lets_plot/_global_settings.py,sha256=4P9UL6xWEARJuxyvXBQUxt1NE_YDrU_ElF34pr72VhA,7440
4
- lets_plot/_kbridge.py,sha256=c5WraZIVSbkTdkaL1nH5T3YsxMk8GGzx_UoKGIO6Qgw,3520
4
+ lets_plot/_kbridge.py,sha256=u5bBe6sTDbNgoAk3HmtkhQXxCYofjSSin-J-yHz0pfY,4675
5
5
  lets_plot/_type_utils.py,sha256=2GZ4GrJHe7rk_DPSHj88nBW8R9xxx7IGbgGQwhQclOg,2919
6
- lets_plot/_version.py,sha256=rmD4JqP-SlpUQyW_PbAPrMYIfXQjRnGxlytOEgaAbH0,239
6
+ lets_plot/_version.py,sha256=VvHV3uIbm4nvaSLO3VKZJlSbOIQacEVQIRlxpP3vYHA,233
7
7
  lets_plot/mapping.py,sha256=q-O14pcnAosRIWcgg9-CkXMF43p5H7cKbyT4ne9w6hY,3576
8
8
  lets_plot/settings_utils.py,sha256=PrceNltN0JNzYxkIx0hwGgzX9dNxgVNqZY5hQ-r8QMQ,8434
9
9
  lets_plot/tilesets.py,sha256=6Hqz-m-rFCq2XbMHtRJ0Zq3GTrnV-GCIhlFMT1opevs,9186
@@ -47,7 +47,7 @@ lets_plot/geo_data/gis/response.py,sha256=7Ac2VN4Hl9iffm7wAyfL80Wzo7sG9A1F5BqzJU
47
47
  lets_plot/geo_data_internals/__init__.py,sha256=4R6hr7MVB9iRi9JNQm_UUQL9jCe_dYDtizw_230V2Yg,234
48
48
  lets_plot/geo_data_internals/constants.py,sha256=IDpHhOOg7dbfIKqLNSk3AGa-5HjDcnItFZDxCm4fylw,428
49
49
  lets_plot/geo_data_internals/utils.py,sha256=phV_Q84xz4uZH2jI9WLUrYDyZAz0d2-00OOLxkRH4iw,967
50
- lets_plot/package_data/lets-plot.min.js,sha256=9GVPVwviWOobhr8O-cl2SELRLBCwAi_GJaii7ZIdEZI,2295723
50
+ lets_plot/package_data/lets-plot.min.js,sha256=VYHOe3GfimcWAh4QUez7m0cowJO9fBzO1IF25cFN5S8,2321322
51
51
  lets_plot/plot/__init__.py,sha256=RNsQuVS8qe4Xf4so7PJiQJKdYYnDMIqydUQNzstqhZI,1771
52
52
  lets_plot/plot/_global_theme.py,sha256=hOV9MzYpfjdF6hDE3mfLv_LqFtaouCJcccoW8pGoFoU,297
53
53
  lets_plot/plot/annotation.py,sha256=ZBQ9ZTxOVT-ePVTUocPTQnM92loiVP0jgWw8XM9Cfmo,7660
@@ -56,7 +56,7 @@ lets_plot/plot/core.py,sha256=I3H-btDBoAoPeLxY2v4mVbrrTwvu6MBFGXcFYPTUSKk,31542
56
56
  lets_plot/plot/expand_limits_.py,sha256=UJzBbNNrdSG7osANmchQ-Jcg27DuSzFXGu27-WxiPSI,2307
57
57
  lets_plot/plot/facet.py,sha256=1vDo1xk0G95x2SSf6HNWfeEgXS-FDxtpd18fo63_6gI,7030
58
58
  lets_plot/plot/font_features.py,sha256=vUc_ICerwqnwwJbDaAm_fS8fmbRTZHzPoAHRszw0SF4,2238
59
- lets_plot/plot/geom.py,sha256=tTU4V-VX1db7tj1aTYNBV8HdiEKt9R83YmF_jOg2_oY,349057
59
+ lets_plot/plot/geom.py,sha256=UtQz8WPStQaG51M0qu3toss2OgUw7w8TAjnoU9UFvf4,354624
60
60
  lets_plot/plot/geom_extras.py,sha256=I_ERjnZlk5VyilJELx0sA_4C2a_Ycjc2Thas-I6WZoo,1694
61
61
  lets_plot/plot/geom_function_.py,sha256=bMGr73qaEW3HnxlWADvHyt_nYn9HJGZzBqYiHx4yIHY,7871
62
62
  lets_plot/plot/geom_imshow_.py,sha256=LWlNVriYK26HZGUjdkbiB4YaoTlVQxUyaNUPY46RVqw,14759
@@ -68,10 +68,10 @@ lets_plot/plot/guide.py,sha256=C-mDgjXKwQz_Pv6OB1rcQohAIUAl0QvoApPsAR5lbs4,6694
68
68
  lets_plot/plot/label.py,sha256=iXTTLP-AjFtHRnti8v4mZMnGLRNLhsxhvetoQPhi8H0,4549
69
69
  lets_plot/plot/marginal_layer.py,sha256=Y4FMmQZlUuLxzjjntVQThuV8scG6LbEmDGjstGMOls4,6357
70
70
  lets_plot/plot/plot.py,sha256=t7zXnu6tiqhwvthO4C7CfaYv2gH_zPzQ8ias9cK3m3Y,8282
71
- lets_plot/plot/pos.py,sha256=FIVYTElPSU5P8ZjI0FyweO2j1Cgb62dvJ172xXtxUp8,10359
71
+ lets_plot/plot/pos.py,sha256=BRrgTYH_Qn9R1a4syDSeDHoce0UPZr4cluyZKk8NVWo,10738
72
72
  lets_plot/plot/sampling.py,sha256=qy0aesxFgpx-cO0-dC1Wv9r4oSbtz7hRPC9YsNk9Pyo,8489
73
73
  lets_plot/plot/sandbox_.py,sha256=Tb5UwJqe8HMMSCbDLdrj_BcxPSkmyxy-hI0_2L6kpBk,545
74
- lets_plot/plot/scale.py,sha256=Y3JYxPUKLcxiWCnLHeleXSi-63NNAh5bmgKTi1tkZwA,136939
74
+ lets_plot/plot/scale.py,sha256=d_cTAnRdTHwSPnUp7mmCTjM6PDOKmr9FMESGu3DQOzk,136949
75
75
  lets_plot/plot/scale_colormap_mpl.py,sha256=D5iWNaWGWpVFCJiNDwf-wHa8Snbd1YiWp6yktOkUl_A,10267
76
76
  lets_plot/plot/scale_convenience.py,sha256=VWe9BJhFlUbWL2CLrOrxPy523dGIKIOL7A2H7OPx8_0,4116
77
77
  lets_plot/plot/scale_identity_.py,sha256=qHo_CI7Xb9Olqza_MqvEV672AaaXM9gWac20SX4AGc4,23796
@@ -80,12 +80,12 @@ lets_plot/plot/series_meta.py,sha256=0aleiIjUKG5nhqrkPwUpWELedz79JgRjq8zwcnevUiA
80
80
  lets_plot/plot/stat.py,sha256=XuZvGxt801db37yM6MsiLb8L5f6BN2L0wfP-QjBDjcc,22933
81
81
  lets_plot/plot/subplots.py,sha256=l3lbbxhCwgib1sIUYx-POpJXT8HbhMk9OeIh3zo8kEM,11333
82
82
  lets_plot/plot/subplots_util.py,sha256=T04pwI7LaYliUqEdRHog1SGExVt9XosQk6XDwqOg7q0,913
83
- lets_plot/plot/theme_.py,sha256=nOUOPRDtUtbzl5lRiDnhLbWkNd2KKGkk4GsoKpQwX9E,28677
83
+ lets_plot/plot/theme_.py,sha256=zQmlXuU7Y0dJa3ZlQFwNJNpsoWe0Eyvf-EErzw1BQuQ,31674
84
84
  lets_plot/plot/theme_set.py,sha256=USNU-ccPKlZ4KEC1ij92n-SHY5271Ru_c1CQIIWXonI,9103
85
85
  lets_plot/plot/tooltip.py,sha256=AvRjT5UPop5wVORFHnaVeBhAIHTYbIjf0FXXUTB4Qvg,15983
86
86
  lets_plot/plot/util.py,sha256=778yCTbEOvFRNueMyEPhRkJtPEwzh3Lo0LQO0FtoM0U,8586
87
- lets_plot-4.6.0a2.dist-info/LICENSE,sha256=r43VKLFaMylB4Ru-pE07j0cfUO7wQpMnWm-uZ8hEqMw,1066
88
- lets_plot-4.6.0a2.dist-info/METADATA,sha256=ap0X2yWU2XlGtUwVnidW53DCx7NQAYA0uULctySdktc,11452
89
- lets_plot-4.6.0a2.dist-info/WHEEL,sha256=VujM3ypTCyUW6hcTDdK2ej0ARVMxlU1Djlh_zWnDgqk,109
90
- lets_plot-4.6.0a2.dist-info/top_level.txt,sha256=ID-ORXUWN-oVZmD4YFy1rQVm2QT1D-MlGON3vdxqgpY,34
91
- lets_plot-4.6.0a2.dist-info/RECORD,,
87
+ lets_plot-4.6.1.dist-info/LICENSE,sha256=r43VKLFaMylB4Ru-pE07j0cfUO7wQpMnWm-uZ8hEqMw,1066
88
+ lets_plot-4.6.1.dist-info/METADATA,sha256=tVaoqaUUk6OCfJYGrriR4Ejqv7wr0x6FJlATgw258YI,11037
89
+ lets_plot-4.6.1.dist-info/WHEEL,sha256=s9Qepq-rbSAzRXMu2ebLaLpFVEK77cKNCRNg8zN3U4g,109
90
+ lets_plot-4.6.1.dist-info/top_level.txt,sha256=ID-ORXUWN-oVZmD4YFy1rQVm2QT1D-MlGON3vdxqgpY,34
91
+ lets_plot-4.6.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.0)
2
+ Generator: setuptools (75.8.2)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp312-cp312-macosx_11_0_arm64
5
5