Skip to content

Commit bb3f10a

Browse files
authored
Merge pull request krassowski#163 from krassowski/cran-and-docs
Minor fixes for CRAN, docs improvements, revert `linewidth` for now
2 parents 21373e6 + 6b5be4e commit bb3f10a

File tree

4 files changed

+36
-5
lines changed

4 files changed

+36
-5
lines changed

DESCRIPTION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Package: ComplexUpset
22
Type: Package
33
Title: Create Complex UpSet Plots Using 'ggplot2' Components
4-
Version: 1.3.4
4+
Version: 1.3.5
55
Authors@R: person(
66
"Michał", "Krassowski", email = "[email protected]", role = c("aut", "cre"),
77
comment = c(ORCID = "0000-0002-9638-7785"))

NEWS.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,22 @@
1+
# Version 1.3.5
2+
3+
2022-11-11
4+
5+
Maintenance:
6+
7+
- Revert `size``linewidth` migration for now to retain compatibility with older ggplot2 versions
8+
- Use `inherits` to satisfy CRAN checks
9+
110
# Version 1.3.4
211

312
2022-11-11
413

514
Enhancements:
15+
616
- Accept `tibble`s in `arrange_venn`, thanks @maximilian-heeg! #159
717

818
Maintenance:
19+
920
- Pass `width=0.9` to workaround change of behaviour in ggplot2 3.4 overextending the width of bars highlighted with `upset_query`
1021
- Fix deprecation warnings for ggplot 3.4 `size` to `linewidth` transition
1122

@@ -14,30 +25,35 @@ Maintenance:
1425
2021-12-07
1526

1627
Bug fixes:
28+
1729
- Makes zero-degree intersection size for `intersections='all'` mode follow the same behavior as the bar plot #144
1830

1931
# Version 1.3.2
2032

2133
2021-12-06
2234

2335
Bug fixes:
36+
2437
- Enable displaying degree 0 intersection with `group_by='sets'`. The old behavior of not displaying degree zero intersection can be achieved by using `min_degree=1` argument #143
2538

2639
# Version 1.3.1
2740

2841
2021-08-04
2942

3043
Fixes:
44+
3145
- use `guide="none"` instead of `guide=FALSE` to silence ggplot2 deprecation warning, thanks @MilouArts! #129
3246

3347
# Version 1.3.0
3448

3549
2021-06-06
3650

3751
Changes:
52+
3853
- sets on intersection matrix can now be highlighted using `upset_query()` #115
3954

4055
Bug fixes:
56+
4157
- alleviate visual glitch of `geom_segment` in intersections matrix showing up with an outline #113
4258
- fixed aesthetics assigned by `upset_query()` which was sometimes not behaving as expected #123
4359

@@ -46,23 +62,27 @@ Bug fixes:
4662
2021-04-25
4763

4864
Bug fixes:
65+
4966
- fixed metadata order in data frame returned by `arrange_venn()` function #116
5067

5168
# Version 1.2.0
5269

5370
2021-04-03
5471

5572
Bug fixes:
73+
5674
- [critical] fixed display order of labels when using `encode_sets=TRUE` #110
5775
- encoding of set names will now properly work around name conflicts #110
5876

5977
Major improvements:
78+
6079
- manually specified intersections will now display empty intersections and non-exclusive intersections correctly #109
6180
- manually specified intersections do not require modifying the `intersect` argument to obtain the intended result any longer #109
6281
- stripes size and other attributes of underlying `geom_segment()` can now be customised with new function: `upset_stripes()` #111
6382
- stripes colour and other attributes can now be mapped to data #111
6483

6584
Minor improvements:
85+
6686
- data.table can be passed instead of data.frame (the conversion will be performed automatically) #105
6787
- warning will be shown if a vector is provided instead of a list to the `intersections` argument #109
6888
- when `intersections` argument includes sets not specified in `intersect`, a warning will be issued and execution will proceed as if those were included in `intersect` #109
@@ -73,6 +93,7 @@ Minor improvements:
7393
2021-01-13
7494

7595
New features:
96+
7697
- it is now possible to select specific intersections passing `intersections = list('Drama', c('Comedy', 'Romance'))`
7798
- it is now possible to define custom order of intersections passing `intersections = list('Drama', c('Comedy', 'Romance'))` and `sort_intersections = FALSE`
7899

@@ -81,6 +102,7 @@ New features:
81102
2021-01-05
82103

83104
Bug fixes:
105+
84106
- Major performance and memory use improvements, especially when using `intersections = 'all'`
85107
- The `max_combinations_n` fail-safe was replaced by a more useful `max_combinations_datapoints_n` with more precise error message
86108
- The atypical use case of filtering with `max_degree = 0` is now accepted again
@@ -91,6 +113,7 @@ Bug fixes:
91113
2021-01-04
92114

93115
Bug fixes:
116+
94117
- Fixed regression of non-observed sets causing "no vector columns were selected" caused by fix addressing #90
95118
- Reduced length of file names for some test doppelgangers
96119

@@ -99,6 +122,7 @@ Bug fixes:
99122
2021-01-04
100123

101124
Bug fixes:
125+
102126
- Filtering by degree when using non-default mode and `intersections='all'` now correctly accounts for all observations (#89)
103127
- Empty sets/groups are now correctly removed when filtering with a non-default mode (#90)
104128
- Missing values are now converted to FALSE and a warning is issued to the user rather than causing an undefined behavior (#88)
@@ -108,6 +132,7 @@ Bug fixes:
108132
2020-12-30
109133

110134
Changes:
135+
111136
- Lists with computed sizes are now returned in a single list called `sizes` by `upset_data()`
112137
- Set sizes are now **not** filtered by default when selecting intersections by `min_*` or `max_*` criteria. Pass `filter_intersections=TRUE` to `upset_set_sizes()` to restore the previous behaviour
113138
- Union sizes are now calculated before data trimming which provides more accurate ratio estimates
@@ -117,12 +142,14 @@ Changes:
117142
- `min_max_early` argument is no longer required and was removed
118143

119144
New features:
145+
120146
- Annotations can now access data for any of the available modes by adding `upset_mode()` layer. By default the annotations are given data corresponding to the same mode as the mode of the passed in the `upset()` call.
121147
- It is now possible to display all intersections, even if those are not present in the data by passing `intersections='all'` to `upset()`; this is only feasible for <20 sets, but filtering by degree can allow to explore a subset of all intersections when there are many more sets; this is only useful for modes different from the default exclusive intersection.
122148
- If filtering leads to no intersections, an informative error is shown (#80)
123149

124150

125151
Bug fixes:
152+
126153
- Modes passed to `upset()` are now also used for sorting and trimming
127154
- Size calculation for modes was optimised for better performance
128155
- User-added layers are now shown on top of `intersection_size()` and `intersection_union()`
@@ -133,20 +160,24 @@ Bug fixes:
133160
2020-12-20
134161

135162
Changes:
163+
136164
- Pass metadata to the `ggplot2` when arranging Venn diagram, allowing to map elements aesthetics details
137165

138166
# Version 0.9.0
139167

140168
2020-12-20
141169

142170
New features:
171+
143172
- Intersection modes were formalised with the default remaining `exclusive_intersection` (alias `distinct`); additional modes are: `inclusive_intersection` (alias `intersect`), `inclusive_union` and `exclusive_union`; please read the [relevant part of the documentation](https://krassowski.github.io/complex-upset/articles/Examples_R.html#0-2-region-selection-modes) for details (#78).
144173
- Simple Venn diagrams (for two or three sets) can now be constructed using same input (binary presence data frame) using pseudo geoms: `geom_venn_circle()`, `geom_venn_label_region()`, `geom_venn_label_set()`, `geom_venn_region()` and scales `scale_color_venn_mix()` and `scale_fill_venn_mix()`; while developed mostly for the documentation needs, it provides unique capability of highlighting relevant regions of the Venn diagram and placing observations within appropriate regions (which allows to demonstrate their attributes with appropriate aesthetics mapping).
145174

146175
Changes:
176+
147177
- Breaking: union size for "empty" intersection is now equal to its size
148178

149179
Bug fixes:
180+
150181
- Layers added to `upset_set_size()` and `intersection_matrix()` will now always go on top (avoiding geoms being hidden underneath)
151182
- Declare layer in NAMESPACE to allow basic usage without loading `ggplot2`
152183
- `upset_query()` will now throw an informative error when the user forgets to pass any aesthetics (#79)

R/upset.R

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ matrix_background_stripes = function(data, stripes, orient='horizontal') {
196196
#' @param colors a vector of colors to repeat as many times as needed for the fill of stripes, or a named vector specifying colors for values of the variable mapped to the color aesthetics in the mapping argument
197197
#' @param data the dataset describing the sets with a column named `set` and any other columns as needed for mapping
198198
#' @export
199-
upset_stripes = function(mapping=aes(), geom=geom_segment(linewidth=7), colors=c('white', 'grey95'), data=NULL) {
199+
upset_stripes = function(mapping=aes(), geom=geom_segment(size=7), colors=c('white', 'grey95'), data=NULL) {
200200
stripes = list(
201201
mapping=mapping,
202202
geom=geom,
@@ -962,7 +962,7 @@ upset = function(
962962

963963
mode = solve_mode(mode)
964964

965-
if (class(base_annotations) == 'character') {
965+
if (inherits(base_annotations, 'character')) {
966966
if (base_annotations != 'auto') {
967967
stop('Unsupported value for `base_annotations`: provide a named list, or `"auto"`')
968968
} else {
@@ -973,7 +973,7 @@ upset = function(
973973
}
974974

975975
# for backwards compatibility pre 1.2
976-
if (class(stripes) != 'upset_stripes') {
976+
if (!inherits(stripes, 'upset_stripes')) {
977977
stripes = upset_stripes(colors=stripes)
978978
}
979979

man/upset_stripes.Rd

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)