Skip to content

Commit f46d675

Browse files
Updated version v4.8.0
1 parent a377278 commit f46d675

File tree

5 files changed

+90
-82
lines changed

5 files changed

+90
-82
lines changed

CHANGELOG.md

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,92 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [4.8.0] - 2025-11-05
9+
10+
### Added
11+
12+
- Geometries:
13+
- `geom_pointdensity()` [[#1370](https://github.com/JetBrains/lets-plot/issues/1370)].
14+
15+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/geom_pointdensity.ipynb).
16+
17+
- Geoms with 1-to-1 statistics (such as `geom_qq()`, `geom_sina()`) preserve the mapping to original data after statistical transformation.
18+
19+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/stat_data_bijection.ipynb).
20+
21+
- `geom_histogram()`: custom bin bounds (parameter `breaks`) [[#1382](https://github.com/JetBrains/lets-plot/issues/1382)].
22+
23+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/geom_histogram_param_breaks.ipynb).
24+
25+
- Plot Layout:
26+
- The legend automatically wraps to prevent overlap - up to 15 rows for vertical legends and 5 columns for horizontal ones [[#1235](https://github.com/JetBrains/lets-plot/issues/1235)].
27+
28+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/legend_wrap.ipynb).
29+
30+
- `gggrid()`: support for shared legends (parameter `guides`).
31+
32+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/gggrid_legend_collect.ipynb).
33+
34+
- Plot Theme:
35+
- `flavor_standard()` sets the theme's default color scheme [[#1277](https://github.com/JetBrains/lets-plot/issues/1277)]. <br>
36+
Use to override other flavors or make defaults explicit.
37+
38+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/flavor_standard.ipynb).
39+
40+
- `theme_gray()` as an alias for `theme_grey()`.
41+
42+
- `legend_justification` parameter of `theme()` accepts additional string values: `'left'`, `'right'`, `'top'`, and `'bottom'`.
43+
44+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/legend_justification.ipynb).
45+
46+
- Support for inward axis ticks.
47+
48+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/axis_tick_direction.ipynb).
49+
50+
- Markdown:
51+
- Support for `target` attribute for links.
52+
- Links now open in a new tab by default [[#1397](https://github.com/JetBrains/lets-plot/issues/1397)].
53+
54+
- `ggtb()`: `size_zoomin` and `size_basis` parameters for geometry scaling [[#1369](https://github.com/JetBrains/lets-plot/issues/1369)].
55+
56+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/ggtb_size_zoomin.ipynb).
57+
58+
59+
### Changed
60+
61+
- [**BREAKING**] Explicit `group` aesthetic now overrides default grouping behavior instead of combining with it [[#1401](https://github.com/JetBrains/lets-plot/issues/1401)].
62+
63+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/group_override_defaults.ipynb).
64+
65+
> [!IMPORTANT]
66+
> Previously, setting `group='variable'` would group by both the explicit variable AND any discrete
67+
> aesthetics (color, shape, etc.). \
68+
> Now it groups ONLY by the explicit variable, matching `ggplot2` behavior. \
69+
> Use `group=[var1, var2, ...]` to group by multiple variables explicitly, \
70+
> and `group=[]` to disable any grouping.
71+
72+
- Missing values in `geom_line(), geom_path(), geom_ribbon()`, and `geom_area()` create gaps in geometries instead of being interpolated over [[#818](https://github.com/JetBrains/lets-plot/issues/818)], [[#1406](https://github.com/JetBrains/lets-plot/issues/1406)].
73+
74+
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/missing_values_line_path_area_ribbon.ipynb).
75+
76+
- `theme`: the `exponent_format` default value changed to `'pow'` - superscript powers of 10 (was e-notation).
77+
78+
- The multi-layer line plot now shows tooltips for each series simultaneously, in the same way that a single-layer plot with color mapped to series does.
79+
80+
81+
### Fixed
82+
83+
- `geom_pie` on geospatioal plot with `map_join` failes to render without explicit `group` aesthetic.
84+
- geom_density2d: NullPointerException when weight aesthetic contains None values [[#1399](https://github.com/JetBrains/lets-plot/issues/1399)].
85+
- Tooltip shows duplicate lines when as_discrete is applied twice to the same var [[#1400](https://github.com/JetBrains/lets-plot/issues/1400)].
86+
- geom_sina: incorrect shape in legend [[#1403](https://github.com/JetBrains/lets-plot/issues/1403)].
87+
- geom_density2d: Incorrect processing of weighted statistics when None value occurs in the x or y column.
88+
- facet_wrap: indescriptive error when the specified facet variable is not present in the dataset [[#1409](https://github.com/JetBrains/lets-plot/issues/1409)].
89+
- Integer numbers in facet strip titles are displayed as float [[#1386](https://github.com/JetBrains/lets-plot/issues/1386)].
90+
- Error when using scale_identity(aesthetic="shape") [[#1212](https://github.com/JetBrains/lets-plot/issues/1212)].
91+
- ggsave: theme option face="italic" doesn't work [[#1391](https://github.com/JetBrains/lets-plot/issues/1391)].
92+
- Fail early if string format is incorrect [[#1410](https://github.com/JetBrains/lets-plot/issues/1410)].
93+
894
## [4.7.3] - 2025-09-12
995

1096
### Changed

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ val letsPlotTaskGroup by extra { "lets-plot" }
4343

4444
allprojects {
4545
group = "org.jetbrains.lets-plot"
46-
version = "4.8.1-SNAPSHOT" // see also: python-package/lets_plot/_version.py
46+
version = "4.8.0" // see also: python-package/lets_plot/_version.py
4747
// version = "0.0.0-SNAPSHOT" // for local publishing only
4848

4949
// Generate JVM 1.8 bytecode

future_changes.md

Lines changed: 1 addition & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -1,85 +1,7 @@
1-
## [4.8.0] - 2025-11-dd
1+
## [4.8.1] - 2025-mm-dd
22

33
### Added
4-
5-
- Geometries:
6-
- `geom_pointdensity()` [[#1370](https://github.com/JetBrains/lets-plot/issues/1370)].
7-
8-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/geom_pointdensity.ipynb).
9-
10-
- Geoms with 1-to-1 statistics (such as `geom_qq()`, `geom_sina()`) preserve the mapping to original data after statistical transformation.
11-
12-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/stat_data_bijection.ipynb).
13-
14-
- `geom_histogram()`: custom bin bounds (parameter `breaks`) [[#1382](https://github.com/JetBrains/lets-plot/issues/1382)].
15-
16-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/geom_histogram_param_breaks.ipynb).
17-
18-
- Plot Layout:
19-
- The legend automatically wraps to prevent overlap - up to 15 rows for vertical legends and 5 columns for horizontal ones [[#1235](https://github.com/JetBrains/lets-plot/issues/1235)].
20-
21-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/legend_wrap.ipynb).
22-
23-
- `gggrid()`: support for shared legends (parameter `guides`).
24-
25-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/gggrid_legend_collect.ipynb).
26-
27-
- Plot Theme:
28-
- `flavor_standard()` sets the theme's default color scheme [[#1277](https://github.com/JetBrains/lets-plot/issues/1277)]. <br>
29-
Use to override other flavors or make defaults explicit.
30-
31-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/flavor_standard.ipynb).
32-
33-
- `theme_gray()` as an alias for `theme_grey()`.
34-
35-
- `legend_justification` parameter of `theme()` accepts additional string values: `'left'`, `'right'`, `'top'`, and `'bottom'`.
36-
37-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/legend_justification.ipynb).
38-
39-
- Support for inward axis ticks.
40-
41-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/axis_tick_direction.ipynb).
42-
43-
- Markdown:
44-
- Support for `target` attribute for links.
45-
- Links now open in a new tab by default [[#1397](https://github.com/JetBrains/lets-plot/issues/1397)].
46-
47-
- `ggtb()`: `size_zoomin` and `size_basis` parameters for geometry scaling [[#1369](https://github.com/JetBrains/lets-plot/issues/1369)].
48-
49-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/ggtb_size_zoomin.ipynb).
50-
514

525
### Changed
536

54-
- [**BREAKING**] Explicit `group` aesthetic now overrides default grouping behavior instead of combining with it [[#1401](https://github.com/JetBrains/lets-plot/issues/1401)].
55-
56-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/group_override_defaults.ipynb).
57-
58-
> [!IMPORTANT]
59-
> Previously, setting `group='variable'` would group by both the explicit variable AND any discrete
60-
> aesthetics (color, shape, etc.). \
61-
> Now it groups ONLY by the explicit variable, matching `ggplot2` behavior. \
62-
> Use `group=[var1, var2, ...]` to group by multiple variables explicitly, \
63-
> and `group=[]` to disable any grouping.
64-
65-
- Missing values in `geom_line(), geom_path(), geom_ribbon()`, and `geom_area()` create gaps in geometries instead of being interpolated over [[#818](https://github.com/JetBrains/lets-plot/issues/818)], [[#1406](https://github.com/JetBrains/lets-plot/issues/1406)].
66-
67-
See: [example notebook](https://nbviewer.org/github/JetBrains/lets-plot/blob/master/docs/f-25e/missing_values_line_path_area_ribbon.ipynb).
68-
69-
- `theme`: the `exponent_format` default value changed to `'pow'` - superscript powers of 10 (was e-notation).
70-
71-
- The multi-layer line plot now shows tooltips for each series simultaneously, in the same way that a single-layer plot with color mapped to series does.
72-
73-
747
### Fixed
75-
76-
- `geom_pie` on geospatioal plot with `map_join` failes to render without explicit `group` aesthetic.
77-
- geom_density2d: NullPointerException when weight aesthetic contains None values [[#1399](https://github.com/JetBrains/lets-plot/issues/1399)].
78-
- Tooltip shows duplicate lines when as_discrete is applied twice to the same var [[#1400](https://github.com/JetBrains/lets-plot/issues/1400)].
79-
- geom_sina: incorrect shape in legend [[#1403](https://github.com/JetBrains/lets-plot/issues/1403)].
80-
- geom_density2d: Incorrect processing of weighted statistics when None value occurs in the x or y column.
81-
- facet_wrap: indescriptive error when the specified facet variable is not present in the dataset [[#1409](https://github.com/JetBrains/lets-plot/issues/1409)].
82-
- Integer numbers in facet strip titles are displayed as float [[#1386](https://github.com/JetBrains/lets-plot/issues/1386)].
83-
- Error when using scale_identity(aesthetic="shape") [[#1212](https://github.com/JetBrains/lets-plot/issues/1212)].
84-
- ggsave: theme option face="italic" doesn't work [[#1391](https://github.com/JetBrains/lets-plot/issues/1391)].
85-
- Fail early if string format is incorrect [[#1410](https://github.com/JetBrains/lets-plot/issues/1410)].

js-package/distr/lets-plot.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

python-package/lets_plot/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33
# Use of this source code is governed by the MIT license that can be found in the LICENSE file.
44
#
55
# see: https://www.python.org/dev/peps/pep-0440/#developmental-releases
6-
__version__ = '4.8.1.dev1'
6+
__version__ = '4.8.0'

0 commit comments

Comments
 (0)