Skip to content

v0.21.0

Compare
Choose a tag to compare
@SimonDanisch SimonDanisch released this 23 Feb 13:39
d157f9c
  • Add voxels plot #3527.
  • Added supported markers hint to unsupported marker warn message #3666.
  • Fixed bug in CairoMakie line drawing when multiple successive points had the same color #3712.
  • Remove StableHashTraits in favor of calculating hashes directly with CRC32c #3667.
  • Breaking (sort of) Added a new @recipe variant which allows documenting attributes directly where they are defined and validating that all attributes are known whenever a plot is created. This is not breaking in the sense that the API changes, but user code is likely to break because of misspelled attribute names etc. that have so far gone unnoticed.
  • Add axis converts, enabling unit/categorical support and more #3226.
  • Breaking Streamlined data_limits and boundingbox #3671
    • data_limits now only considers plot positions, completely ignoring transformations
    • boundingbox(p::Text) is deprecated in favor of boundingbox(p::Text, p.markerspace[]). The more internal methods use string_boundingbox(p). #3723
    • boundingbox overwrites must now include a secondary space argument to work boundingbox(plot, space::Symbol = :data) #3723
    • boundingbox now always consider transform_func and model
    • data_limits(::Scatter) and boundingbox(::Scatter) now consider marker transformations #3716
  • Breaking Improved Float64 compatability of Axis #3681
    • This added an extra conversion step which only takes effect when Float32 precision becomes relevant. In those cases code using project() functions will be wrong as the transformation is not applied. Use project(plot_or_scene, ...) or apply the conversion yourself beforehand with Makie.f32_convert(plot_or_scene, transformed_point) and use patched_model = Makie.patch_model(plot_or_scene, model).
    • Makie.to_world(point, matrix, resolution) has been deprecated in favor of Makie.to_world(scene_or_plot, point) to include float32 conversions.
  • Breaking Reworked line shaders in GLMakie and WGLMakie #3558
    • GLMakie: Removed support for per point linewidths
    • GLMakie: Adjusted dots (e.g. with linestyle = :dot) to bend across a joint
    • GLMakie: Adjusted linestyles to scale with linewidth dynamically so that dots remain dots with changing linewidth
    • GLMakie: Cleaned up anti-aliasing for truncated joints
    • WGLMakie: Added support for linestyles
    • WGLMakie: Added line joints
    • WGLMakie: Added native anti-aliasing which generally improves quality but introduces outline artifacts in some cases (same as GLMakie)
    • Both: Adjusted handling of thin lines which may result in different color intensities
  • Fixed an issue with lines being drawn in the wrong direction in 3D (with perspective projection) #3651.
  • Breaking Renamed attribute rotations to rotation for scatter and meshscatter which had been inconsistent with the otherwise singular naming scheme and other plots like text #3724.
  • Fixed contourf bug where n levels would sometimes miss the uppermost value, causing gaps #3713.
  • Added scale attribute to violin #3352.
  • Use label formatter in barplot #3718.
  • Fix the incorrect shading with non uniform markerscale in meshscatter #3722
  • Add scale_to=:flip option to hist, which flips the direction of the bars #3732
  • Fixed an issue with the texture atlas not updating in WGLMakie after display, causing new symbols to not show up #3737
  • Added linecap and joinstyle attributes for lines and linesegments. Also normalized miter_limit to 60° across all backends. #3771