Releases: trevorld/ggpattern
ggpattern v1.3.1
Breaking changes
- Now requires
ggplot2(>= 4.0.2) and thusR(>= 4.1). - All geom default aesthetics now use
from_theme()for colours, line widths, and line types.
These changes were made to the{ggplot2}analogues in{ggplot2}4.0.0. - Turned off fallback for
sizetolinewidthtranslation ingeom_bar_pattern()/geom_col_pattern().
This fallback was turned off ingeom_bar()andgeom_col()in{ggplot2}4.0.0.
Deprecated features
geom_boxplot_pattern(fatten)is deprecated.
Usegeom_boxplot_pattern(median.linewidth)instead.
fattenwas deprecated ingeom_boxplot()in{ggplot2}4.0.0.- The
fattenargument ofgeom_crossbar_pattern()is deprecated.
Usemiddle.linewidthinstead.
fattenwas deprecated ingeom_crossbar()in{ggplot2}4.0.0. - The
draw_quantilesparameter ofgeom_violin_pattern()is deprecated.
Usequantile.linetypeinstead.
draw_quantileswas deprecated ingeom_violin()in{ggplot2}4.0.0.
New features
- We now export
GeomBin2dPattern. geom_boxplot_pattern()gainswhisker.colour,whisker.color,
whisker.linetype,whisker.linewidth,staple.colour,staple.color,
staple.linetype,staple.linewidth,median.colour,median.color,
median.linetype,median.linewidth,box.colour,box.color,
box.linetype, andbox.linewidthparameters for per-component styling.
This matches the changes ingeom_boxplot()in{ggplot2}4.0.0.geom_crossbar_pattern()gainsmiddle.colour,middle.color,
middle.linetype,middle.linewidth,box.colour,box.color,
box.linetype, andbox.linewidthparameters for per-component styling.
This matches the changes ingeom_crossbar()in{ggplot2}4.0.0.geom_violin_pattern()gainsquantile.colour,quantile.color,
quantile.linetype, andquantile.linewidthparameters for styling
quantile lines.
This matches the changes ingeom_violin()in{ggplot2}4.0.0.
Bug fixes and minor improvements
- We now construct several geom functions from the
{ggpattern}Geomobjects withmake_constructor()and
these{ggpattern}Geomobjects now directly inherit more methods from the{ggplot2}Geomobjects they extend. widthis now an aesthetic (default0.9) ingeom_bar_pattern()andgeom_col_pattern()rather than a function parameter and
GeomBoxplotPatternandGeomViolinPatterndefault aesthetics now
includewidth = 0.9.
These match upstream changes in{ggplot2}4.0.0.
ggpattern v1.2.1
New features
- Adds
guideargument toscale_pattern_angle_discrete(),scale_pattern_density_discrete(),scale_pattern_spacing_discrete(),scale_pattern_xoffset_discrete(),scale_pattern_yoffset_discrete(),scale_pattern_aspect_ratio_discrete(),scale_pattern_key_scale_factor_discrete(),scale_pattern_scale_discrete(),scale_pattern_phase_discrete(),scale_pattern_frequency_discrete(),scale_pattern_res_discrete(),scale_pattern_rot_discrete()(#139).
Bug fixes and minor improvements
ggpattern v1.1.4
Bug fixes and minor improvements
- Updated a couple of examples to use the
linewidthaesthetic
instead of thesizeaesthetic which was deprecated in{ggplot2}3.4.0.
ggpattern v1.1.3
Bug fixes and minor improvements
- Added alt text to vignette and README images.
- Added missing package anchors to a few Rd cross-references (#128).
ggpattern v1.1.1
Breaking changes
- The argument
binwidthhas been removed fromgeom_bar_pattern().
This argument was deprecated with ggpattern 0.1.0 (2020-04-01). - The
draw_key_polygon_pattern()called bygeom_sf_pattern()is now passed in its
actual aspect ratio (instead of 1).
This may cause your legends togeom_sf_pattern()to look different.
Deprecated features
- In line with upstream changes in
{ggplot2}thetransargument has been deprecated in various scales functions.
Use the newtransformargument instead (#113). outline.type = "legacy"is now formally deprecated in
geom_area_pattern()andgeom_ribbon_pattern().
Useoutline.type = "full"instead.
outline.type = "legacy"was deprecated with ggpattern 0.1.0 (2020-04-01)
but this is the first timeoutline.type = "full"has been supported as an alternative.
New features
-
Geoms now more consistently expose the
lineendandlinejoinparameters (#94).
This matches a similar upstream change in ggplot2 3.4.0. -
geom_area_pattern()andgeom_ribbon_pattern()now acceptoutline.type = "lower"andoutline.type = "full".
geom_density_pattern()now exposes theoutline.typeparameter. -
geom_bar_pattern()andgeom_col_pattern()now accept parameterjust.
Thejustparameter was added toggplot2::geom_bar()andggplot2::geom_col()with ggplot2 3.4.0. -
geom_boxplot_pattern()now accept theoutliersandstaplewidthparameters.
Theoutliersandstaplewidthparameters were added togeom_boxplot()in ggplot2 3.5.0. -
geom_sf_pattern()now accepts thearrowparameter.
Thearrowparameter was added togeom_sf()in ggplot2 3.5.0. -
geom_violin_pattern()now accepts theboundsparameter.
Theboundsparameter was added togeom_violin()in ggplot2 3.5.0. -
Each pattern aesthetic may now be a list of vectors with each list element
providing that aesthetic for a different pattern (#100).
Most builtin{gridpattern}"geometry" patterns support multiple fill colors etc. which previously we could only access in{ggpattern}via custom patterns. -
The
fill,pattern_fill, andpattern_fill2aesthetics may now be (a list of) gradient/pattern fills
(in addition to color strings) (#112).
Note using gradient/pattern fills will require R (>= 4.2), a graphics device with support for the gradient/pattern fill feature,
and will work only for a subset of patterns (i.e. most of the "geometry" patterns).
Use of just color fills should continue to work on a wider variety of R versions, graphics devices, and patterns. -
{ggpattern} now supports the
pattern_unitsaesthetic (#81).
Supported by most "geometry" patterns.
It sets thegrid::unit()used by thepattern_spacing,pattern_xoffset,pattern_yoffset,
and (for the "wave" pattern) thepattern_frequencyaesthetics.
Default is "snpc" while "cm" and "inches" are likely alternatives. -
geom_bin_2d_pattern()is now an alias forgeom_bin2d_pattern().
This matches{ggplot2}which has bothgeom_bin_2d()andgeom_bin2d().
Bug fixes and minor improvements
draw_key_boxplot_pattern(),draw_key_crossbar_pattern(), anddraw_key_polygon_pattern()aspect_ratioargument
now defaults toget_aspect_ratio().- Several (continuous) scales now have an
...argument which will be passed toggplot2::continuous_scale(). - The default
na.valueforscale_pattern_continuous(),scale_pattern_discrete(), andscale_pattern_manual()is now "none" (#107).
ggpattern v1.0.1
Deprecated features
- In line with upstream changes in
{ggplot2}alinewidthaesthetic has been introduced and supersedes thesizeaesthetic for scaling the width of patterned area border lines (#82).
sizewill remain functioning but deprecated for these geoms and it is recommended to update all code to reflect the new aesthetic.
Continue to use thesizeaesthetic to adjust the size of any points ingeom_sf_pattern().
ggpattern v1.0.0
Bug fixes and minor improvements
- Fixes bug in "image" pattern when
pattern_type = "tile"(#37).
Transparent parts of tiled images are now consistently transparent.
We now support thepattern_gravityaesthetic whenpattern_type = "tile".
ggpattern v0.4.2
Breaking changes
-
To turn off "clipping" certain built-in patterns with the new R 4.1 graphic features
and instead use a raster image approximation one should now use
options(ggpattern_use_R4.1_masks = FALSE)instead ofoptions(ggpattern_use_R4.1_clipping = FALSE).
Alternatively, usingoptions(ggpattern_use_R4.1_features = FALSE)to turn off all
R 4.1 features will continue to work. -
{ggpattern} removes the following data/functions
which were deprecated in a previous version of {ggpattern}:convert_polygon_df_to_polygon_grob()convert_polygon_df_to_polygon_sf()convert_polygon_sf_to_polygon_df()
-
Defunct functions are no longer exported.
New features
- {ggpattern} now supports
geom_histogram_pattern()(#71)
Bug fixes and minor improvements
-
geom_sf_pattern()andgeom_polygon_pattern()now support polygons with holes
by using "alpha masking" instead of a "clipping path".
If R 4.1 alpha mask feature is not supported by the active graphics device
(or the masking feature is declined) we use a raster image approximation of the pattern.
Resolution of the raster approximation can be adjusted by thepattern_resaesthetic
whose default in turn can be adjusted by the"ggpattern_res"global option.This change fixes patterns filling holed polygons in certain graphic devices (#68).
This change fixes patterns sometimes escaping plot window (#60). -
draw_key_polygon_pattern(),GeomMapPattern,GeomPolygonPattern, and
GeomSfPatternnow draws a "border" grob on top of the "pattern" grob (#72). -
Continuous "pattern_colour", "pattern_fill", and "pattern_fill2" color scales'
default "colourbar" guide support should now work. -
scale_pattern_size_continuous()now uses "pattern_size" aesthetic
instead of "size" aesthetic in underlyingggplot2::continuous_scale()call. -
We now export
scale_pattern_alpha()which is an alias of
scale_pattern_alpha_continuous().
ggpattern v0.3.1
Breaking changes
{ggpattern} removes the following data/functions
which were deprecated in a previous version of {ggpattern}:
calculate_bbox_polygon_df()convert_img_to_array()convert_polygon_df_to_alpha_channel()create_gradient_img()fetch_placeholder_img()fill_area_with_img()magick_filter_names, instead usemagick::filter_types()magick_gravity_names, instead usemagick::gravity_types()magick_pattern_intensity_names, instead usegridpattern::names_magick_intensitymagick_pattern_names, instead usegridpattern::names_magickmagick_pattern_stripe_names, instead usegridpattern::names_magick_stripeplaceholder_names, instead usegridpattern::names_placeholderrotate_polygon_df()
Deprecated features
{ggpattern} now deprecates the following data/functions,
they may be removed in a future version of {ggpattern}:
convert_polygon_df_to_polygon_grob()convert_polygon_df_to_polygon_sf()convert_polygon_sf_to_polygon_df()
New features
-
{ggpattern} now supports the following aesthetics (#45):
pattern_grid: Supported by most "geometry" patterns.
Default is "square" while "hex" and "hex_circle" allow hexagonal layouts.pattern_res: Supported by "array" patterns.
Allow user to explicitly set resolution of image-based patterns.pattern_rot: Used by "pch", "regular_polygon", "rose", and "text" patterns
to rotate symbol within pattern.
'rot' is parameter used ingrid:textGrob()to indicate rotation and
pattern_anglealready used to rotate entire pattern.
Bug fixes and minor improvements
geom_polygon_pattern()andgeom_sf_pattern()now support polygons with holes (#26, #44).
If R 4.1 clipping features are not supported by the graphic device
(or the clipping feature is declined) we must use a raster image approximation of the pattern.
Resolution of the raster approximation can be adjusted by thepattern_resaesthetic
whose default in turn can be adjusted by the"ggpattern_res"global option.