Recent Releases of ComplexUpset
ComplexUpset - v1.3.5
- Revert
size→linewidthmigration for now to retain compatibility with older ggplot2 versions - Use
inheritsto satisfy CRAN checks
Full Changelog: https://github.com/krassowski/complex-upset/compare/v1.3.4...v1.3.5
- Jupyter Notebook
Published by krassowski over 3 years ago
ComplexUpset - v1.3.4
Enhancements:
- Accept tibbles in arrange_venn, thanks @maximilian-heeg! #159
Maintenance:
- Pass width=0.9 to workaround change of behaviour in ggplot2 3.4 overextending the width of bars highlighted with upset_query
- Fix deprecation warnings for ggplot 3.4 size to linewidth transition
Full Changelog: https://github.com/krassowski/complex-upset/compare/v1.3.3...v1.3.4
- Jupyter Notebook
Published by krassowski over 3 years ago
ComplexUpset - v1.3.3
Bug fixes:
- Makes zero-degree intersection size for intersections='all' mode follow the same behavior as the bar plot (#144).
- Jupyter Notebook
Published by krassowski over 4 years ago
ComplexUpset - v1.3.2
Bug fixes:
- Enable displaying degree 0 intersection with group_by='sets'. The old behaviour of not displaying degree zero intersection can be achieved by using min_degree=1 argument.
- Jupyter Notebook
Published by krassowski over 4 years ago
ComplexUpset - v1.3.1
Fixes:
- use guide="none" instead of guide=FALSE to silence ggplot2 deprecation warning, thanks @MilouArts!
- Jupyter Notebook
Published by krassowski almost 5 years ago
ComplexUpset - v1.3.0
Changes:
- sets on intersection matrix can now be highlighted using upset_query() #115
Bug fixes:
- alleviate visual glitch of geom_segment in intersections matrix showing up with an outline #113
- fixed aesthetics assigned by upset_query() which was sometimes not behaving as expected #123
- Jupyter Notebook
Published by krassowski almost 5 years ago
ComplexUpset - v1.2.1
Bug fixes:
- fixed metadata order in data frame returned by arrange_venn() function #116
- Jupyter Notebook
Published by krassowski about 5 years ago
ComplexUpset - v1.2.0
This release contains critical bug fixes and includes major improvements to handling of manually specified intersections and allows for extended customization of stripes. All users are recommended to upgrade to this release.
Bug fixes:
- [critical] fixed display order of labels when using encode_sets=TRUE #110
- encoding of set names will now properly work around name conflicts #110
Major improvements:
- manually specified intersections will now display empty intersections and non-exclusive intersections correctly #109
- manually specified intersections do not require modifying the intersect argument to obtain the intended result any longer #109
- stripes size and other attributes of underlying geom_segment() can now be customized with new function: upset_stripes() #111
- stripes color and other attributes can now be mapped to data #111
Minor improvements:
- data.table can be passed instead of data.frame (the conversion will be performed atuomatically) #105
- warning will be shown if a vecotor is provided instead of a list to the intersections argument #109
- 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
- when incorrect names of sets are passed to intersections argument, those will be highlighted and plotting will be aborted #109
- Jupyter Notebook
Published by krassowski about 5 years ago
ComplexUpset - v1.1.0
New features:
- it is now possible to select specific intersections passing intersections = list('Drama', c('Comedy', 'Romance'))
- it is now possible to define custom order of intersections passing intersections = list('Drama', c('Comedy', 'Romance')) and sort_intersections = FALSE
- Jupyter Notebook
Published by krassowski over 5 years ago
ComplexUpset - v1.0.3
This is a bug-fix only release. All users on 1.0.x are recommended to upgrade to this version.
Bug fixes:
- Major performance and memory use improvements, especially when using intersections = 'all'
- The max_combinations_n fail-safe was replaced by a more useful max_combinations_datapoints_n with more precise error message
- The atypical use case of filtering with max_degree = 0 is now accepted again
- Fix tests using all the data (effectively union mode) rather than chosen mode data only
- Jupyter Notebook
Published by krassowski over 5 years ago
ComplexUpset - v1.0.2
This is a bug-fix only release. All users on 1.0.x are recommended to upgrade to this version.
Bug fixes: - Fixed regression of non-observed sets causing "no vector columns were selected" caused by fix addressing #90 - Reduced length of file names for some test doppelgangers
- Jupyter Notebook
Published by krassowski over 5 years ago
ComplexUpset - v1.0.1
This is a bug-fix only release. All users on 1.0.0 are recommended to upgrade to this version.
Bug fixes:
- Filtering by degree when using non-default mode and intersections='all' now correctly accounts for all observations (#89)
- Empty sets/groups are now correctly removed when filtering with a non-default mode (#90)
- Missing values are now converted to FALSE and a warning is issued to the user rather than causing an undefined behavior (#88)
- Jupyter Notebook
Published by krassowski over 5 years ago
ComplexUpset - v1.0.0
Changes:
- Lists with computed sizes are now returned in a single list called sizes by upset_data()
- 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 behavior
- Union sizes are now calculated before data trimming which provides more accurate ratio estimates
- Added examples for Venn diagrams which are now covered by automated tests to protect against regressions
- Removed upset_data() intersected member to avoid needless duplication of the data frames; access with_sizes instead
- aest argument of intersection_size() and related functions was renamed to mapping and is now the first positional argument
- min_max_early argument is no longer required and was removed
New features:
- 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.
- 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.
- If filtering leads to no intersections, an informative error is shown (#80)
Bug fixes:
- Modes passed to upset() are now also used for sorting and trimming
- Size calculation for modes was optimized for better performance
- User-added layers are now shown on top of intersection_size() and intersection_union()
- Column names are no longer modified when supplying to ggplot2 allowing to easily use them in annotations (#82)
- Jupyter Notebook
Published by krassowski over 5 years ago
ComplexUpset - v0.9.0
New features:
- Intersection modes were formalized 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 for details (#78).
- 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).

Changes: - Breaking: union size for "empty" intersection is now equal to its size
Bug fixes:
- Layers added to upset_set_size() and intersection_matrix() will now always go on top (avoiding geoms being hidden underneath)
- Declare layer in NAMESPACE to allow basic usage without loading ggplot2
- upset_query() will now throw an informative error when the user forgets to pass any aesthetics (#79)
- Jupyter Notebook
Published by krassowski over 5 years ago
ComplexUpset - v0.8.0
New features:
- Breaking: geom of upset_set_size() now accepts geom object (e.g. geom_bar()) rather than a function (e.g. geom_bar)
- Breaking: upset_set_size() no longer accepts variadic arguments (...); please modify the geom instead
- Data available for upset_set_size() now includes all metadata of the original data frame, enabling to annotate the bars, e.g.:
- upset_set_size(geom=geom_bar(aes(fill=mpaa, x=group)))
- Intersections can now be sorted by multiple criteria, e.g. first by degree and then by cardinality: sort_intersections_by=c('degree', 'cardinality') (#47)
- Breaking: dot_size argument was removed. Use matrix=intersection_matrix(geom=geom_point(size=5)) instead
- Intersection matrix can now be customized, including the points (e.g. changing shape to squares), segments (e.g. using dotted line) and outlines (changing color) allowing to create Example 5.4:
Bug fixes:
- Additional geoms added to upset_set_size() are now added on top of stripes, thus properly visible
- Jupyter Notebook
Published by krassowski over 5 years ago
ComplexUpset - v0.7.4
- significant performance improvements, especially for large datasets and
group_by(#12) - set sizes can now be moved to the right side of the plot using
upset_set_size(position='right') guides='over'can be now passed toupset()to place the legends over the set sizes
- Jupyter Notebook
Published by krassowski over 5 years ago
ComplexUpset - v0.7.3
- address CRAN review comments (see #68)
- add CITATION file
- Jupyter Notebook
Published by krassowski over 5 years ago
ComplexUpset - v0.4.0
New features: - Sorting (descending/ascending/none) by degree/cardinality/ratio #18 #13 #10 - Selective themes customization #13 - Set size customization including rotations, log, ticks and more #11 - Added roxygen-based documentation and reference
- Jupyter Notebook
Published by krassowski about 6 years ago
ComplexUpset - v0.3.0
New features added: - percentage display option - highlighting (#2) - max_size (#5)
- Jupyter Notebook
Published by krassowski about 6 years ago
ComplexUpset - v0.1.0
Initial release, basic functionality implemented.
- Jupyter Notebook
Published by krassowski about 6 years ago