Skip to content

Latest commit

 

History

History
239 lines (207 loc) · 12.6 KB

CHANGELOG.md

File metadata and controls

239 lines (207 loc) · 12.6 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

[0.11.0] - 2024-11-x

Changed

  • [#245] Change Contours size to be f64 instead of usize

[0.10.1] - 2024-11-x

Added

  • [#243] Made plotly_embed_js embed all JS scripts when enabled. Renamed use_cdn_plotly to use_cdn_js.
  • [#239] Add Categorical Axis Ordering and Axis Category Array.

Fixed

  • [#242] Disable request for tex-svg.js file
  • [#237] Add Categorical Axis ordering.

[0.10.0] - 2024-09-16

Added

  • [#231] Added new plotly_embed_js feature to reduce binary sizes by not embedding plotly.min.js in the library unless explicitly enabled via the feature flag. Deprecates use_local_plotly in favor of explicit opt-in via the feature flag and introduce method use_cdn_plotly to allow users to use CDN version even behind the plotly_embed_js feature flag.

Fixed

  • [#230] Make Bar chart width and offset use f64 values.

[0.10.0] - 2024-09-06

Added

  • [#217] Added show_html(filename) method to bypass situations where accessing default /tmp is not possible, e.g., with in SNAP Firefox
  • [#227] Switch from HTML template render from askama to rinja

Fixed

  • [#232] Generalize OS detection in the context of opening HTML pages with default app via xdg-open
  • [#233] Fix mdBook code examples

[0.9.0] - 2024-06-29

Added

  • [#153] Added LayoutScene.
  • [#154] Improve ergonomics of Title and LegendGroupTitle structs: new method now takes no arguments as per other structs, whilst a new with_text() constructor is added for convenience. Where other structs contain a Title (and LegendGroupTitle), users can now call the title() (and legend_group_title()) method with anything that impls Into<Title>, viz. String, &String, &str and Title.
  • [#157] Fix HeatMap's setters for correctly setting zmin, zmax and zmin independent of Z input type.
  • [#159] Make heat_map module public to expose Smoothing enum.
  • [#161] Added Axis scaleanchor settter.
  • [#163] Added DensityMapbox.
  • [#166] Added subplot example with multiple titles.
  • [#178] Fix setter for Axis::matches to take string arg.
  • [#180] Add setter for Mapbox::domain.
  • [#181] Fix compilation error when mixing the crate with askama/with-axum by adding with-axum feature.
  • [#207] Add Table trace.
  • [#212] Update LICENSE

[0.8.4] - 2023-07-09

Added

  • [#143] Widen version range of askama.

Fixed

  • [#129] Fix issue for plots not showing in browser in Windows. Thanks to @juanespj and @M-NK-Y for the PRs.
  • [#147] Update documentation for jupyter notebook example.

[0.8.3] - 2022-11-04

Fixed

  • [#122] Compilation error for the wasm feature.
  • [#123] Compilation error for the plotly_kaleido feature.

[0.8.2] - 2022-11-03

Added

  • [#110] LegendGroupTitle to existing traces.
  • [#88] Mesh3D, Image, ScatterMapbox traces.

Changed

  • [#113] Refactored the structure of the examples to make them more accessible, whilst adding more examples e.g. for wasm.
  • [#115] Simplify the function signature of Plot.to_inline_html() so that it just takes Option<&str> as an argument.

[0.8.1] - 2022-09-25

Added

  • Button support (i.e. updatemenus) contibuted by @sreenathkrishnan. Details and examples in this well written PR #99.
  • Internally, there is now a plotly-derive crate which defines a FieldSetter procedural macro. This massively cuts down the amount of code duplication by generating the setter methods based on the struct fields. Again thanks to @sreenathkrishnan for this effort.

[0.8.0] - 2022-08-26

Version 0.8.0 represents a significant release which refactors a lot of the codebase and tries to provide a cleaner API: there are several breaking changes listed below. On the whole, if migrating from v0.7.0, start by following any new compiler errors and, if you're still stuck, open an issue on the issue tracker and we can help out.

Added

  • impl Clone, Serialize and PartialEq for Plot
  • impl Clone +/- Copy for color types
  • Support for configuration options
  • Support for layout templates and pre-defined themes
  • Support for WASM environments
  • A much enhanced test suite
  • Support for Sankey diagrams
  • Support for Plot3D - 3D plots for scatter, line and surface data

Changed

  • Improve implementation of private::NumOrString to support more primitive types (Issue #47)
  • Remove private::TruthyEnum in favour of a more robust way of serializing to String or bool
  • Refactor Color module
  • Refactored HTML templates with cleaner Javascript code
  • Plot::save() is renamed to Plot::write_image()
  • Plot::show_{png | jpeg} is now made generic via the new Plot::show_image() across static image formats with the ImageFormat enum
  • Plot::write_html() now takes a filepath and saves the plot to that location
  • Plot::to_html() now has similar behaviour to Plot::to_inline_html() and just returns a String

Fixed

  • Typos in CONTRIBUTING.md
  • Serialization of plotly_kaleido::PlotData (Issue #50)

Updated

  • ndarray to 0.15.4.
  • serde to 1.0.132.
  • serde_json to 1.0.73.
  • askama to 0.11.0.
  • rand to 0.8.
  • rand_distr to 0.4.
  • plotly.js to 2.12.1

[0.7.0] - 2022-01-01

Added

  • ScatterPolar contributed by @samlich.
  • Add a method to render the plot to anything implementing Write, contributed by @foresterre.

Changed

  • Using plotly version 2.2.1
  • Updated Kaleido version in plotly_kaleido to 0.2.1.

Fixed

  • Axis ticks text has the wrong parameter name (Issue #45).

[0.6.0] - 2021-01-31

Added

  • tag matches for struct Axis : allow for synchronisation between subplots on x-axis
  • fn matches in impl of Axis

[0.6.0] - 2020-07-25

Added

Changed

  • Removed num dependence.
  • Removed plotly_orca and the orca feature. Use the kaleido feature for static image generation.
  • Updated Kaleido version in plotly_kaleido to 0.0.1.

[0.5.1] - 2020-07-12

Added

  • From<&str> implementation for Title.

Changed

  • Optimised dependencies.
  • Clearer deprecation message for orca related methods.
  • Wider use of Default.

[0.5.0] - 2020-07-12

Added

  • Plotly.rs Book.
  • Using plotly.js from the official CDN is now the default. To use the local version use the Plot::use_local_plotly method.
  • Plot rasterization to png, jpg, eps, pdf, webp and svg using plotly/Kaleido, enabled using the kaleido feature.
  • Multi-axis support and examples.
  • Subplot support and examples.
  • Colors can now be floating values within the color-scale range.
  • OpenGL support for scatter plots (Scatter::open_gl_mode); useful for displaying large data-sets.

Changed

  • Layout complete.
  • Updated plotly version to 1.54.6.
  • plotly_orca and the orca feature are deprecated; use kaleido instead.
  • All examples have been grouped to mirror the Plotly.rs book.

[0.4.1] - 2020-03-26

Fixed

  • Added error message to capture the scenario when there is no default browser (or no browser at all) on a machine. The message suggests a few alternatives.

[0.4.0] - 2020-02-27

Added

  • Documentation for Plot
  • A feature (orca) that enables Plot conversion to the following output formats: png, jpeg, webp, svg, pdf and eps
    • This optional feature is implemented in the plotly_orca crate
  • Box plot support
  • Heat map support
  • Contour plot support
  • More histogram examples
  • Filled lines example

Changed

  • Using specific Plotly.js version: https://cdn.plot.ly/plotly-1.52.2.js
  • Plot::add_layout changed to Plot::set_layout as there is only one layout per Plot
  • TraceSerialize renamed to Trace
  • Plot::show_jpg renamed to Plot::show_jpeg for consistency
  • Removed HexColor type. Hex color input is still supported using Strings or string slices
  • Refactored project structure:
    • All plots Traces are now accessible from the main namespace plotly::.
    • Enums and structs common to more than 1 plot type and/or the Layout now live in plotly::common::
    • Internal methods and structs that are not considered part of the public API are now in plotly::private::

Fixed

  • Color serialization was operating correctly only on Rgb, Rgba and Hex colors ignoring the named colors

[0.3.0] - 2020-02-23

Added

  • Surface plot
  • More examples for scatter and line plots

Changed

  • Completed implementation of the following:
    • Scatter plot
    • Box plot
    • Scatter and Box plot with error bars
    • Candlestick plot
    • OHLC plot
  • Extended README.md with a few basic examples
  • The API is now based on the builder pattern
  • Extended color set

Fixed

  • Plot::show() now correctly opens the plot in the default browser as is the case for MacOSX and Linux

[0.2.1] - 2020-01-26

Added

[0.1.0] - 2020-01-26

Added

  • Placeholder repository.
  • Proof of concept implementation of a scatter plot.