Changelog History
Page 1
-
v2.5.1 Changes
November 03, 2022โ Added
geom_text(), geom_label():
See: example notebook.
vjustparameter inposition_stack()andposition_fill()[#323].
See: example notebook.
use_crsparameter ingeom_map()and other geoms, working withGeoDataFrame
See: example notebook.
geom_imshow()(formergeom_image()):extentparameter
See: example notebook.
vmin, vmax, cmapparameters
See: example notebook.
image_matrix():vmin, vmax, cmapparameters
See: example notebook.
๐ Changed
geom_image()renamed togeom_imshow()
See updated examples: image 101, Fisher's boat.
0๏ธโฃ
geom_boxplot(): default value for parameterwhisker_widthis 0.5.โฌ๏ธ Upgraded Kotlin version to 1.7.20 (was 1.6.21).
๐ Fixed
- element_blank() has no effect in theme legend_title [#608].
- ๐
geom_livemap(): add support of geom_label parameters [#601]. - Tooltip: different formats for same aesthetic Y [#579].
- Positioning with "constant" x/y doesn't work on axis with log10 transform [#618].
- Positional "constant" doesn't honor axis limits [#619].
- Parameter
normingeom_imshow(). - Several issues leading to crush in Swing/Batik apps. Related to [discussions]
- Text labels got trimmed occasionally, when symbols
-,/,\or|present. - ๐
geom_livemap()doesn't load vector tiles insideiframewith certain security policies.
-
v2.5.0 Changes
September 29, 2022โ Added
- ๐ New theme:
theme_bw()[#554].
See: example notebook.
- Color schemes (flavors) applicable to existing themes:
flavor_darcula()flavor_solarized_light()flavor_solarized_dark()flavor_high_contrast_light()flavor_high_contrast_dark()
See: example notebook.
- Viridis color scales:
scale_color_viridis(),scale_fill_viridis().
See: example notebook.
๐ New parameters in
element_text()[#562]:size, family(example notebook)hjust, vjustfor plot title, subtitle, caption, legend and axis titles (example notebook)marginfor plot title, subtitle, caption, axis titles and tick labels (example notebook)
The 'newline' character (
\n) now works asline breakin axis title.
See: example notebook.
- Parameter
whisker_widthingeom_boxplot()[#549].
See: example notebook.
- ๐ New geometry
geom_label()[#557].
See: example notebook.
Auto-detection of Databricks and NextJournal environments [#602].
๐ง Python wheels for manylinux arm64 architecture [#581].
๐ Changed
- ๐ New tooltip style after applying
coord_flip()[#580].
See: example notebook.
- โฌ๏ธ In Lets-Plot for Java/Swing, Apache Batik upgraded to v.1.15 [#604]
๐ Fixed
- Density and area geoms: preserve the z-order when grouping [#552].
- ๐ Allow to import all 'bistro' functions just by '*' [#551].
- 0๏ธโฃ Boxplot, violin, crossbar: position dodge width=0.95 should be used by default [#553].
- Tooltip is shown not for the nearest object [#574].
- Tooltip is not displayed for the object on the plots border [#575].
- The plot caption overlaps with the legend [#587].
- Unclear size unit of width [#589].
- ๐ Specify size units in docstrings [#597].
- No tooltips for geom_boxplot with zero height [#563].
- geom_text: wrong label alignment with
hjust0 and 1 [#592]. - Error when using lets-plot in streamlit [#595].
- ๐ Documentation for the
breaksparameter in scales [#507].
- ๐ New theme:
-
v2.4.0 Changes
June 20, 2022โ Added
๐ Python 3.10 support [#505].
๐ Python 3.9: a Python wheel for macOS arm64 architecture (Apple Silicon).
๐ง
LetsPlot.set_theme()- configuring a default plot theme.
See: example notebook.
- Quantile-Quantile (Q-Q) plot:
- geometries:
geom_qq()geom_qq_line()geom_qq2()geom_qq2_line()- quick Q-Q : the
qq_plot()function in thebistromodule.
See: example notebook.
See: example notebook.
- Parameter
orientationin geoms:bar, boxplot, density, histogram, freqpoly, smooth, violin.
See: example notebook.
New in plot theme:
faceparameter inelement_text().
See: example notebook.
panel_borderparameter intheme()[#542].
See: example notebook.
- Tooltip theme options, new parameters in
theme(): tooltip- tooltip rectangle options;tooltip_text, tooltip_title_text- tooltip text options;axis_tooltip_text, axis_tooltip_text_x, axis_tooltip_text_y- axis tooltip text options.
See: example notebook.
scale_color_gradientn()andscale_fill_gradientn()functions [#504].
See: example notebook.
๐ Changed
geom_livemap[breaking change] :symbol="point"now should be specified explicitly to enable the "livemap" layer to handle provided "point" aesthetics directly. This change doesn't affect "points" layers added via thegeom_point()geometry layer.- ๐ New style of tooltip color marker (two sidebars with a stroke color) and symbols in legend (rectangle with a stroke instead of a slash-line).
- ๐ New type of general tooltip for
geom_boxplot: displayed under the cursor. - 0๏ธโฃ Default sampling type for
geom_violinswitched fromsystematictopick.
๐ Fixed
- ๐
geom_livemap: support of thearrowparameter ingeom_segment[#131]. - Differences in tooltip color marker for plots with and without livemap.
- Labels out of plot when axis_text_y='blank' [#525].
- NPE in corr_plot with null coefficients.
- Outliers are not shown when boxplot' alpha=0.
- ๐ Support for polars.DataFrame [#526].
- JFX rendering issue that causes tooltips to stuck [#539].
- ๐ Support trim parameter in density and ydensity stats [#62].
- Unexpected point geometries on geom_livemap() [#547].
geom_violin: add missing parameterskernel,bw,adjust,n,fs_maxto signature and docstring.
-
v2.3.0 Changes
March 21, 2022โ Added
- Plot subtitle and caption [#417]:
subtitleparameter inggtitle()andlabs(),captionparameter inlabs(),plot_subtitleandplot_captionparameters intheme().
See: example notebook.
- The 'newline' character (
\n) now works asline breakin plot title, subtitle, caption and in legend title.
See: example notebook.
- ๐ New in tooltip customization API:
- The
title()option defines a tooltip "title" text which will always appear above the rest of the tooltip content. - The 'newline' character (
\n) now works asline breakin tooltips. - Automatic word wrap: occurs when the length of a text value in tooltip exceeds the 30 characters limit.
- The
See: example notebook.
See: example notebook.
๐ New in
geom_livemap():- The
Resetbutton: returns the map widget to its initial zoom/location state. - Parameters
data_size_zoomin, const_size_zoomin: allow configuring how zooming-in of the map widget increases size of geometry objects (circles, lines etc.) on map. - Parameter
ontopthat controls z-index of thegeom_livemaplayer. - Parameter
show_coord_pick_toolsto show "copy location" and "draw geometry" buttons.
- The
๐ New geometries:
geom_violin()
See: example notebook.
geom_dotplot()
See: example notebook.
geom_ydotplot()
See: example notebook.
๐ Changed
- ๐ New tooltip style: rounded corners, bold label, colored marker inside the tooltip.
- ๐ Deprecated tooltip customization API:
function
color()will be removed in one of the future releases. - 'Auto shrink': plots automatically shrink when necessary to fit width of the output (notebook) cell [#488].
๐ Fixed
- LiveMap, Swing-batik: legend is not visible when overlapping map [#496].
- CVE-2021-23792 in org.jetbrains.lets-plot:lets-plot-image-export@2.2.1 [#497].
- Color in tooltip does not correspond to the color of marker on map [#227].
- tooltip on livemap: hide tooltip when the cursor is over the controls [#335].
- Automatic detection of DateTime series [#99].
- ๐ Fix tooltips for
geom_histogram(stat='density'). - The axis tooltip overlaps the general tooltip [#515].
- The multi-layer tooltip detection strategy will only be used if more than one layer provides tooltips.
- scaleColorManual Divide by Zero with 1 mapping [#506].
- LinearBreaksHelper$Companion.computeNiceBreaks out of memory error [#105].
- Plot subtitle and caption [#417]:
-
v2.2.1 Changes
December 10, 2021โ Added
scale_x_time()andscale_y_time()[#468].
See: example notebook.
plot_background, legend_backgroundparameters intheme()[#485].axis_ontop, axis_ontop_x, axis_ontop_yparameters intheme()
๐ Fixed
- Coord system limits do not work with x/y scale with transform [#474].
- Provide 0-23 hour formatting [#469].
- No tooltip shown when I'm trying to add an empty line [#382].
- ๐
coord_fixed()should adjust dimensions of "geom" panel accordingly [#478]. - The tooltip dependence on number of factors works separately by layers [#481].
- Tooltip on y-axis looks wrong [#393].
- Is kotlin-reflect really needed for lets-plot? [#471].
-
v2.2.0 Changes
October 29, 2021โ Added
coord_flip().
See: example notebook.
- ๐ Date-time formatting support:
See: example notebook.
๐ง Pre-configured themes:
- Standard ggplot2 themes:
theme_grey(), theme_light(), theme_classic(), theme_minimal(); - Other themes:
theme_minimal2()- the default theme,theme_none().
- Standard ggplot2 themes:
Theme modification: more parameters were added to the
theme()function.
See: example notebook.
๐ง > Note: fonts size, family and face still can not be configured.
corr_plot()function now also accepts pre-computed correlation coefficients. I.e. the following two expressions are equivalent:python corr_plot(iris_df).points().labels().build() corr_plot(iris_df.corr()).points().labels().build() # new
๐ Changed
- The size of fonts on plot was slightly increased all across the board.
- 0๏ธโฃ The default plot size was increased by 20%, it's now 600x400 px.
- ๐ Deprecated API:
stat_corr()and "correlation stat" will be removed in one of the future releases. Please use thecorr_plot()plot builder object instead.
๐ Fixed
- Ordering facets - the "order" value 0 disables facet ordering [#454].
- Tooltips for discrete variables: add the dependence of the tooltip on the number of factors. The X-axis tooltip is always shown for discrete data.
- map_join doesn't work when join variables with same names without mappings [#428].
- Zoom without clipping breaks tooltips [#373].
- Unreadable breaks on axis [#430].
- ๐ป Map rendering is broken when browser uses scaling [#450].
- corr_plot() error for data with zero variation [#329].
- Misleading error message [#271].
-
v2.1.0 Changes
August 16, 2021โ Added
- Ordering categories. New parameters in the
as_discretefunction:order_by(string) - the name of the variable by which the ordering will be performed;order(int) - the ordering direction - 1 for ascending direction and -1 for descending (default value).
See: as_discrete.
- ๐ง Basemap tiles configuring:
- Subdomains parameter
{s}for XYZ raster tiles. - Solid color tiles:
maptiles_solid(). - Builtin configurations for some 3rd party maptile services. The
lets_plot.tilesetsmodule.
- Subdomains parameter
See: Configuring basemap tiles.
๐ Changed
- โฌ๏ธ Upgraded Apach Batik version to 1.14 (was 1.12) [#398].
- โฌ๏ธ Upgraded Kotlin version to 1.5.21 (was 1.4.21)
- โฌ๏ธ Upgraded Gradle version to 7.1.1 (was 6.8.3)
๐ Fixed
- geom_livemap: properly handle
max_zoompamareter inmaptiles_zxy(). - Strange looking legend for tiles [#245].
- Need to skip "bad" values during scale transformation [#301].
- NPE on negative value in data and scale_xxx(trans='log10') [#292].
- Legend is broken when using scale_fill_brewer with 'trans' parameter [#284].
- Scale breaks should be distributed evenly on 'sqrt' scale. [#407].
- Wrong tooltip formatting when used with log10 scales [#406].
- Bad axis labels when using both plot and layer data [#327].
- Plot layout looks wrong [#403].
- map_join is not working correctly when
map=geocoder[#380] - 0๏ธโฃ Tooltip default formatting should not change after adding other variables to tooltip [#388].
- Tooltip on axis: increase the font size. [#399].
- Tooltip format for variable is not working [#401].
- Wrong direction in colorbars (legend) [#204].
- geom_jitter: show axis tooltips (same as geom_point) [#412].
- Outlier tooltips: the spout sometime is too long (boxplot) [#358].
- Faceted plot is broken by geom with "constant" aesthetics [#391].
- ๐ Interactive maps in AWT (PyCharm plugin):
- Memory leaks in PyCharm caused by
dispose()method in PlotPanel. - While showing map in PyCharm CPU is busy all the time, even when nothing is changing on screen.
- Click events detection.
- Memory leaks in PyCharm caused by
- Ordering categories. New parameters in the
-
v2.0.4 Changes
June 09, 2021๐ Changed
- โฌ๏ธ Upgraded
kotlinx.htmlversion to 0.7.3 (was 0.7.2) > In JVM projects it's no longer necessary to addhttps://maven.pkg.jetbrains.space/public/p/kotlinx-html/mavenrepository ๐ง > to the project configuration.
๐ Fixed
- Multilayer plots are corrupted [#385].
- โฌ๏ธ Upgraded
-
v2.0.3 Changes
June 02, 2021โ Added
- In tooltip customization API:
layer_tooltips(variables)- the new parametervariablesdefines a list of variable names, which values will be placed line by line in the general tooltip. See: Tooltip Customization.
๐ Changed
- ๐ CDN: Lets-Plot JavaScript library is now served via JSDELIVR (was CDNJS): ๐ฆ > https://cdn.jsdelivr.net/gh/JetBrains/lets-plot@v2.0.3/js-package/distr/lets-plot.min.js
๐ Fixed
- โ Removed the last dependency on bintray JCenter (commit).
- geom_boxplot: should be possible to create boxplot without specifying x-series [#325]
- geom_hline: graph plotted outside of coordinate plane visible part [#334]
- Draw geometry only once if layer has no aes mapping specified [#73]
- map: calif.housing [#140]
- ๐ Can't build plot: "Uncaught SyntaxError: Unexpected string" in a console [#371]
- All scales should have the 'format' parameter [#347].
- Poor font rendering in Swing/Batik. Related to: [#364]
- Exclude slf4j implementation from lets-plot-common [#374]
- In tooltip customization API:
-
v2.0.2 Changes
April 13, 2021๐ Changed
- Due to shutting down of Bintray, JCenter:
- The Lets-Plot JS library is now delivered via CDNJS.
- JVM Maven artifacts are now published at Maven Central.
- Due to shutting down of Bintray, JCenter: