Skip to content

Commit 230e8f7

Browse files
authored
polish news (#3209)
1 parent 80f1b7c commit 230e8f7

File tree

1 file changed

+87
-52
lines changed

1 file changed

+87
-52
lines changed

NEWS.md

Lines changed: 87 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,80 +1,115 @@
11
# ggplot2 3.1.0.9000
22

3-
* `geom_rug()` gains a `length` option to allow for changing the length of the rug lines. (@daniel-wells, #3109)
3+
This is a minor release with an emphasis on internal changes to make ggplot2
4+
faster and more consistent. The few interface changes will only affect the
5+
aesthetics of the plot in minor ways, and will only potentially break code of
6+
extension developers if they have relied on internals that have been changed.
7+
This release also sees the addition of Hiroaki Yutani (@yutannihilation) to the
8+
core developer team.
49

5-
* `coord_sf()` graticule lines are now drawn in the same thickness as
6-
panel grid lines in `coord_cartesian()`, and seting panel grid
7-
lines to `element_blank()` now also works in `coord_sf()`
8-
(@clauswilke, #2991, #2525).
9-
10-
* ggplot2 no longer attaches any external packages when using functions that depend on
11-
packages that are suggested but not imported by ggplot2. The affected functions
12-
include `geom_hex()`, `stat_binhex()`, `stat_summary_hex()`, `geom_quantile()`,
13-
`stat_quantile()`, and `map_data()` (@clauswilke, #3126).
10+
## New features
1411

15-
* `geom_hline()`, `geom_vline()`, and `geom_abline()` now throw a warning if the user supplies both an `xintercept`, `yintercept`, or `slope` value and a mapping (@RichardJActon, #2950).
12+
* This release includes a range of internal changes that speeds up plot
13+
generation. None of the changes are user facing and will not break any code,
14+
but in general ggplot2 should feel much faster. The changes includes, but are
15+
not limited to:
16+
17+
- Caching ascent and descent dimensions of text to avoid recalculating it for
18+
every title.
1619

17-
* `scale_color_continuous()` now points at `scale_colour_continuos()` so that it
18-
will handle `type = "viridis"` as the documentation states (@hlendway, #3079).
20+
- Using a faster data.frame constructor as well as faster indexing into
21+
data.frames
22+
23+
- emoving the plyr dependency, replacing plyr functions with faster
24+
equivalents.
1925

20-
* `scale_shape_identity()` now works correctly with `guide = "legend"` (@malcolmbarrett, #3029)
26+
* `geom_polygon()` can now draw polygons with holes using the new `subgroup`
27+
aesthetic. This functionality requires R 3.6.0 (@thomasp85, #3128)
2128

22-
* Facet strips on the left side of plots now have clipping turned on, preventing
23-
text from running out of the strip and borders from looking thicker than for
24-
other strips (@karawoo, #2772 and #3061).
29+
* Aesthetic mappings now accept functions that return `NULL` (@yutannihilation,
30+
#2997).
2531

26-
* `coord_map()` now can have axes on the top and right (@karawoo, #3042).
32+
* `stat_function()` now accepts rlang/purrr style anonymous functions for the
33+
`fun` parameter (@dkahle, #3159).
2734

28-
* `geom_rug()` gains an "outside" option to allow for moving the rug tassels to outside the plot area. (@njtierney, #3085)
35+
* `geom_rug()` gains an "outside" option to allow for moving the rug tassels to
36+
outside the plot area (@njtierney, #3085) and a `length` option to allow for
37+
changing the length of the rug lines (@daniel-wells, #3109).
2938

30-
* `geom_rug()` now works with `coord_flip()` (@has2k1, #2987).
39+
## Extensions
3140

3241
* Layers now have a new member function `setup_layer()` which is called at the
33-
very beginning of the plot building process and which has access to the original
34-
input data and the plot object being built. This function allows the creation of
35-
custom layers that autogenerate aesthetic mappings based on the input data or that
36-
filter the input data in some form. One example is the new `LayerSf` class which
37-
locates the geometry column in sf objects and sets up an aesthetic mapping for it
38-
(@clauswilke, #2872).
39-
40-
* Default labels are now generated more consistently; e.g., symbols no longer
41-
get backticks, and long expressions are abbreviated with `...`
42-
(@yutannihilation, #2981).
43-
44-
* Diverging brewer color scale now has the correct mid-point color (@dariyasydykova, #3072).
42+
very beginning of the plot building process and which has access to the
43+
original input data and the plot object being built. This function allows the
44+
creation of custom layers that autogenerate aesthetic mappings based on the
45+
input data or that filter the input data in some form. This is mainly of
46+
interest to extension developers (@clauswilke, #2872).
4547

46-
* Aesthetic mappings now accept functions that return `NULL` (@yutannihilation,
47-
#2997).
48-
49-
* Closed arrows in `element_line()` are now filled (@yutannihilation, #2924).
48+
* `x0` and `y0` are now recognized positional aesthetics so they will get scaled
49+
if used in extension geoms and stats (@thomasp85, #3168)
5050

51-
* ggplot2 now works in Turkish locale (@yutannihilation, #3011).
51+
## Minor improvements and bug fixes
5252

53-
* `GeomRibbon` and `GeomArea` now sort the data along the x-axis in the
54-
`setup_data()` method rather than as part of `draw_group()` (@thomasp85, #3023)
53+
* `coord_map()` now can have axes on the top and right (@karawoo, #3042).
5554

5655
* `coord_sf()`, `coord_map()`, and `coord_polar()` now squash `-Inf` and `Inf`
5756
into the min and max of the plot (@yutannihilation, #2972).
5857

59-
* `stat_bin()` will now error when the number of bins exceeds 1e6 to avoid
60-
accidentally freezing the user session (@thomasp85).
58+
* `coord_sf()` graticule lines are now drawn in the same thickness as panel grid
59+
lines in `coord_cartesian()`, and seting panel grid lines to `element_blank()`
60+
now also works in `coord_sf()`
61+
(@clauswilke, #2991, #2525).
6162

62-
* `stat_bin()` now handles data with only one unique value (@yutannihilation #3047).
63+
* `economics` data has been regenerated. This leads to some changes in the
64+
values of all columns (especially in `psavert`), but more importantly, strips
65+
the grouping attributes from `economics_long`.
6366

64-
* `stat_function()` now accepts rlang/purrr style anonymous functions for the
65-
`fun` parameter (@dkahle, #3159).
67+
* `element_line()` now fills closed arrows (@yutannihilation, #2924).
6668

67-
* `geom_polygon()` can now draw polygons with holes using the new `subgroup`
68-
aesthetic. This functionality requires R 3.6 (@thomasp85, #3128)
69+
* Facet strips on the left side of plots now have clipping turned on, preventing
70+
text from running out of the strip and borders from looking thicker than for
71+
other strips (@karawoo, #2772 and #3061).
6972

70-
* `x0` and `y0` is now recognized positional aesthetics so they will get scaled
71-
if used in extension geoms and stats (@thomasp85, #3168)
73+
* ggplot2 now works in Turkish locale (@yutannihilation, #3011).
74+
75+
* ggplot2 no longer attaches any external packages when using functions that
76+
depend on packages that are suggested but not imported by ggplot2. The
77+
affected functions include `geom_hex()`, `stat_binhex()`,
78+
`stat_summary_hex()`, `geom_quantile()`, `stat_quantile()`, and `map_data()`
79+
(@clauswilke, #3126).
80+
81+
* `geom_area()` and `geom_ribbon()` now sort the data along the x-axis in the
82+
`setup_data()` method rather than as part of `draw_group()` (@thomasp85,
83+
#3023)
7284

73-
* Re-generate economics data. This leads to some changes in the values of all
74-
columns (especially in `psavert`), but more importantly, strips the grouping
75-
attributes from `economics_long`.
85+
* `geom_hline()`, `geom_vline()`, and `geom_abline()` now throw a warning if the
86+
user supplies both an `xintercept`, `yintercept`, or `slope` value and a
87+
mapping (@RichardJActon, #2950).
88+
89+
* `geom_rug()` now works with `coord_flip()` (@has2k1, #2987).
90+
91+
* Default labels are now generated more consistently; e.g., symbols no longer
92+
get backticks, and long expressions are abbreviated with `...`
93+
(@yutannihilation, #2981).
94+
95+
* All-`Inf` layers are now ignored for picking the scale (@yutannihilation,
96+
#3184).
97+
98+
* Diverging Brewer colour palette now use the correct mid-point colour
99+
(@dariyasydykova, #3072).
100+
101+
* `scale_color_continuous()` now points to `scale_colour_continuous()` so that
102+
it will handle `type = "viridis"` as the documentation states (@hlendway,
103+
#3079).
104+
105+
* `scale_shape_identity()` now works correctly with `guide = "legend"`
106+
(@malcolmbarrett, #3029)
107+
108+
* `stat_bin()` will now error when the number of bins exceeds 1e6 to avoid
109+
accidentally freezing the user session (@thomasp85).
76110

77-
* All-`Inf` layers are now ignored for picking the scale (@yutannihilation, #3184).
111+
* `stat_bin()` now handles data with only one unique value (@yutannihilation
112+
#3047).
78113

79114
# ggplot2 3.1.0
80115

0 commit comments

Comments
 (0)