lets-plot

Multiplatform plotting library based on the Grammar of Graphics

MIT License

Downloads
30.4K
Stars
1.5K
Committers
20

Bot releases are visible (Hide)

lets-plot - v3.0.0rc1

Published by VDovidaytis-HORIS almost 2 years ago

lets-plot - v2.5.1

Published by VDovidaytis-HORIS almost 2 years ago

[2.5.1] - 2022-11-03

Added

  • geom_text(), geom_label():

    • the 'newline' character (\n) now works as line break ([#605])
    • lineheight aesthetic ([#324])
    • nudge_x, nudge_y parameters ([#324])
    • special text alignments (vjust and hjust): "inward" and "outward" ([#324])

    See: example notebook.

  • vjust parameter in position_stack() and position_fill() [#323].

    See: example notebook.

  • use_crs parameter in geom_map() and other geoms, working with GeoDataFrame

    See: example notebook.

  • geom_imshow() (former geom_image()):

  • image_matrix():

Changed

  • geom_image() renamed to geom_imshow()

    See updated examples: image 101,
    Fisher's boat.

  • geom_boxplot(): default value for parameter whisker_width is 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 norm in geom_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 inside iframe with certain security policies.
lets-plot - v2.5.1rc1

Published by VDovidaytis-HORIS almost 2 years ago

lets-plot - v2.5.0

Published by VDovidaytis-HORIS about 2 years ago

[2.5.0] - 2022-09-29

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]:

  • The 'newline' character (\n) now works as line break in axis title.

    See: example notebook.

  • Parameter whisker_width in geom_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].
  • 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 hjust 0 and 1 [#592].
  • Error when using lets-plot in streamlit [#595].
  • Documentation for the breaks parameter in scales [#507].
lets-plot - v2.5.0rc1

Published by VDovidaytis-HORIS about 2 years ago

lets-plot - v2.4.0

Published by VDovidaytis-HORIS over 2 years ago

[2.4.0] - 2022-06-20

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 the bistro module.

    See: example notebook.

  • Marginal plots: the ggmarginal() function [#200],
    [#384].

    See: example notebook.

  • Parameter orientation in geoms: bar, boxplot, density, histogram, freqpoly, smooth, violin.

    See: example notebook.

  • New in plot theme:

    • face parameter in element_text().

      See: example notebook.

    • panel_border parameter in theme() [#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() and scale_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
    the geom_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.
  • Default sampling type for geom_violin switched from systematic to pick.

Fixed

  • geom_livemap: support of the arrow parameter in geom_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 parameters kernel, bw, adjust, n, fs_max to signature and docstring.
lets-plot - v2.4.0rc1

Published by VDovidaytis-HORIS over 2 years ago

lets-plot - v2.3.0

Published by VDovidaytis-HORIS over 2 years ago

[2.3.0] - 2022-03-21

Added

  • Plot subtitle and caption [#417]:
    subtitle parameter in ggtitle() and labs(),
    caption parameter in labs(),
    plot_subtitle and plot_caption parameters in theme().

    See: example notebook.

  • The 'newline' character (\n) now works as line break in 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 as line break in tooltips.
    • Automatic word wrap: occurs when the length of a text value in tooltip exceeds the 30 characters limit.

    See: example notebook.

  • Parameter scales in facet_grid()/facet_wrap() [#451,
    #479].

    See: example notebook.

  • New in geom_livemap():

    • The Reset button: 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 ontop that controls z-index of the geom_livemap layer.
    • Parameter show_coord_pick_tools to show "copy location" and "draw geometry" buttons.
  • 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:[email protected] [#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].
lets-plot - v2.3.0rc2

Published by VDovidaytis-HORIS over 2 years ago

lets-plot - v2.3.0rc1

Published by VDovidaytis-HORIS over 2 years ago

lets-plot - v2.2.1

Published by VDovidaytis-HORIS almost 3 years ago

[2.2.1] - 2021-12-10

Added

  • scale_x_time() and scale_y_time() [#468].

    See: example notebook.

  • plot_background, legend_background parameters in theme() [#485].

  • axis_ontop, axis_ontop_x, axis_ontop_y parameters in theme()

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].
lets-plot - v2.2.1rc1

Published by VDovidaytis-HORIS almost 3 years ago

lets-plot - v2.2.0

Published by VDovidaytis-HORIS almost 3 years ago

[2.2.0] - 2021-10-29

Added

  • coord_flip().

    See: example notebook.

  • Date-time formatting support:

    • tooltip format() should understand date-time format pattern [#387];
    • scale_x_datetime should apply date-time formatting to the breaks [#392].

    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().
  • Theme modification: more parameters were added 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:
    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.
  • 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 the corr_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].
lets-plot - v2.2.0rc3

Published by VDovidaytis-HORIS almost 3 years ago

lets-plot - v2.2.0rc2

Published by VDovidaytis-HORIS almost 3 years ago

lets-plot - v2.2.0rc1

Published by VDovidaytis-HORIS almost 3 years ago

lets-plot - v2.1.0

Published by VDovidaytis-HORIS about 3 years ago

[2.1.0] - 2021-08-16

Added

  • Ordering categories. New parameters in the as_discrete function:

    • 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.tilesets module.

    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_zoom pamareter in maptiles_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]
  • 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):
    • A memory leak in PyCharm caused by a final void dispose() method in PlotPanel.
    • When showing map in PyCharm CPU is busy all the time, even then nothing is changing on screen.
    • Click events detection.
lets-plot - v2.1.0rc1

Published by VDovidaytis-HORIS about 3 years ago

lets-plot - v2.0.5rc1

Published by VDovidaytis-HORIS about 3 years ago

lets-plot - v2.0.4

Published by VDovidaytis-HORIS over 3 years ago

[2.0.4] - 2021-06-09

Changed

  • Upgraded kotlinx.html version to 0.7.3 (was 0.7.2)

In JVM projects it's no longer necessary to add https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven repository
to the project configuration.

Fixed

  • Multilayer plots are corrupted [#385].
Package Rankings
Top 12.28% on Repo1.maven.org
Top 2.47% on Pypi.org
Badges
Extracted from project README
official JetBrains project License MIT Latest Release Latest Release Latest Release JetBrains Plugins JetBrains plugins