|
1 | | -# Changelog |
| 1 | +# eulerr 7.0.3 |
2 | 2 |
|
3 | | -## eulerr 7.0.3 |
4 | | - |
5 | | -### Bug Fixes |
| 3 | +## Bug Fixes |
6 | 4 |
|
7 | 5 | - Fix deprecated use of `arma::is_finite()` in C++ code. |
8 | 6 | - Fix URL link to eulerAPE in documentation. |
9 | 7 | - Fix URL link to workshop paper in documentation and citation. |
10 | 8 |
|
11 | | -## eulerr 7.0.2 |
| 9 | +# eulerr 7.0.2 |
12 | 10 |
|
13 | | -### Bug Fixes |
| 11 | +## Bug Fixes |
14 | 12 |
|
15 | 13 | - Fix order and layout of strips when grouping (#108, by @altairwei) |
16 | 14 |
|
17 | | -## eulerr 7.0.1 |
| 15 | +# eulerr 7.0.1 |
18 | 16 |
|
19 | | -### Minor Changes |
| 17 | +## Minor Changes |
20 | 18 |
|
21 | 19 | - Fixed some incorrect documentation of internal functions. |
22 | 20 | - Corrected an url for eulerAPE. |
23 | 21 |
|
24 | | -## eulerr 7.0.0 |
| 22 | +# eulerr 7.0.0 |
25 | 23 |
|
26 | | -### New Features |
| 24 | +## New Features |
27 | 25 |
|
28 | 26 | - It is now possible to set the loss function to be used when trying to |
29 | 27 | optimize the Euler diagram layout via `loss` and `loss_aggregator`. |
30 | 28 | There is a new vignette that showcases this new feature. |
31 | 29 |
|
32 | | -### Minor Changes |
| 30 | +## Minor Changes |
33 | 31 |
|
34 | 32 | - C++14 is now required for the package. |
35 | 33 |
|
36 | | -### Bug Fixes |
| 34 | +## Bug Fixes |
37 | 35 |
|
38 | 36 | - Label repelling via `adjust_labels` in `plot.euler()` has been |
39 | 37 | deprecated and removed to fix sanitizer warnings. |
40 | 38 |
|
41 | | -## eulerr 6.1.1 |
| 39 | +# eulerr 6.1.1 |
42 | 40 |
|
43 | | -### Minor changes |
| 41 | +## Minor changes |
44 | 42 |
|
45 | 43 | - citation to conference paper added to `inst/CITATION` |
46 | 44 | - error messages for erroneous input have been improved in several places |
47 | 45 | - switched `PI` to `M_PI` to support `STRICT_R_HEADERS` in C++ code |
48 | 46 | (#82, thanks @eddelbuettel) |
49 | 47 |
|
50 | | -### Bug fixes |
| 48 | +## Bug fixes |
51 | 49 |
|
52 | 50 | - error in documentation for list method has been fixed, thanks @gprezza (##77) |
53 | 51 |
|
54 | | -## eulerr 6.1.0 |
| 52 | +# eulerr 6.1.0 |
55 | 53 |
|
56 | | -### Minor changes |
| 54 | +## Minor changes |
57 | 55 |
|
58 | 56 | - Label repelling (activated by calling `euler()` with `adjust_labels = TRUE`) |
59 | 57 | no longer repels text labels away from the edges of the shapes in |
60 | 58 | the diagram. |
61 | 59 |
|
62 | | -### Bug fixes |
| 60 | +## Bug fixes |
63 | 61 |
|
64 | 62 | - Rectify sanitizer error from clang-ASAN test environment. |
65 | 63 |
|
66 | | -## eulerr 6.0.2 |
| 64 | +# eulerr 6.0.2 |
67 | 65 |
|
68 | | -### Bug fixes |
| 66 | +## Bug fixes |
69 | 67 |
|
70 | 68 | - Set `stringsAsFactors = TRUE` inside all relevant functions in `euler()` |
71 | 69 | to avoid errors in upcoming R version. |
72 | 70 | - Fix broken link in _eulerr under the hood_ vignette. |
73 | 71 |
|
74 | | -## eulerr 6.0.1 |
| 72 | +# eulerr 6.0.1 |
75 | 73 |
|
76 | | -### Minor changes |
| 74 | +## Minor changes |
77 | 75 |
|
78 | 76 | - Throw an error message when the number of sets in `venn()` exceeds 5 (##65) |
79 | 77 | - Performance improved when large lists are used as input to `euler()` and |
80 | 78 | `venn()` (##64, @privefl) |
81 | 79 |
|
82 | | -### Bug fixes |
| 80 | +## Bug fixes |
83 | 81 |
|
84 | 82 | - Correctly handle `data.frame` inputs to `euler()` when categorical |
85 | 83 | variables are character vectors and not factors. |
86 | 84 |
|
87 | | -## eulerr 6.0.0 |
| 85 | +# eulerr 6.0.0 |
88 | 86 |
|
89 | | -### New features |
| 87 | +## New features |
90 | 88 |
|
91 | 89 | - In `plot.euler()`, percentages can be added to the plot in addition to or |
92 | 90 | instead of counts by providing a `list` to the `quantities` argument |
|
102 | 100 | - A new vignette featuring a gallery of plots from the package has been |
103 | 101 | added. |
104 | 102 |
|
105 | | -### Minor changes |
| 103 | +## Minor changes |
106 | 104 |
|
107 | 105 | - The default `cex` for quantity labels has changed from 1.0 to 0.9. |
108 | 106 | - Labels for sets that overlap are now merged (partly fixes ##45) |
|
112 | 110 | - Plotting data has been exposed in a `data` slot in the object created |
113 | 111 | by calling to `plot.euler()` (##57) |
114 | 112 |
|
115 | | -### Bug fixes |
| 113 | +## Bug fixes |
116 | 114 |
|
117 | 115 | - An error in layout normalization that occurred sometimes |
118 | 116 | with ellipses has been fixed. |
119 | 117 |
|
120 | 118 | ## eulerr 5.1.0 |
121 | 119 |
|
122 | | -### New features |
| 120 | +## New features |
123 | 121 |
|
124 | 122 | - `venn()` is a new function that produces Venn diagrams for up to |
125 | 123 | 5 sets. The interface |
126 | 124 | is almost identical to `euler()` except that a single integer |
127 | 125 | can also be provided. A new vignette, _Venn diagrams with eulerr_, |
128 | 126 | exemplifies its use. |
129 | 127 |
|
130 | | -### Minor changes |
| 128 | +## Minor changes |
131 | 129 |
|
132 | 130 | - Calculations for the strips in `plot.euler()` when a list of |
133 | 131 | Euler diagrams is given has been improved. Setting `fontsize` or |
|
138 | 136 | - `eulergram()` objects from `plot.euler()` now have a proper grob name |
139 | 137 | for the canvas grob, so that extracting information from them is easier. |
140 | 138 |
|
141 | | -### Bug fixes |
| 139 | +## Bug fixes |
142 | 140 |
|
143 | 141 | - Return value documentation for `euler()` now correctly says "ellipses" |
144 | 142 | and not "coefficients". |
145 | 143 | - `data.frame` or `matrix` inputs now work properly |
146 | 144 | when values are numerical. (##42) |
147 | 145 | - Fixed some spelling errors in news and vignettes. |
148 | 146 |
|
149 | | -## eulerr 5.0.0 |
| 147 | +# eulerr 5.0.0 |
150 | 148 |
|
151 | | -### New features |
| 149 | +## New features |
152 | 150 |
|
153 | 151 | - `error_plot()` is a new function that offers diagnostic plots of |
154 | 152 | fits from `euler()`, letting the user visualize the error in the |
155 | 153 | resulting Euler diagram. |
156 | 154 |
|
157 | | -### Major changes |
| 155 | +## Major changes |
158 | 156 |
|
159 | 157 | - `euler()` once again uses the residual sums of squares, rather than the |
160 | 158 | stress metric, as optimization objective, which means that |
|
167 | 165 | - The c++ internals have been rewritten using more memory-efficient, performant |
168 | 166 | and expressive code. |
169 | 167 |
|
170 | | -### Minor changes |
| 168 | +## Minor changes |
171 | 169 |
|
172 | 170 | - The `euler.data.frame()` method (and by proxy the `euler.matrix()` method) |
173 | 171 | can now take matrices with factors in addition to the previously supported |
|
190 | 188 | - Parts of the _eulerr under the hood_ vignette has been branched off into |
191 | 189 | a new vignette regarding visualization. |
192 | 190 |
|
193 | | -### Bug fixes |
| 191 | +## Bug fixes |
194 | 192 |
|
195 | 193 | - Empty combinations can now be provided and will be plotted (generating |
196 | 194 | completely blank plots). |
|
199 | 197 | - Several spelling and grammar mistakes were corrected in vignettes and |
200 | 198 | documentation. |
201 | 199 |
|
202 | | -## eulerr 4.1.0 |
| 200 | +# eulerr 4.1.0 |
203 | 201 |
|
204 | | -### Minor changes |
| 202 | +## Minor changes |
205 | 203 |
|
206 | 204 | - `plot.euler()` now returns a `gTree` object. All of the plotting mechanisms |
207 | 205 | are now also found in this function and `plot.eulergram()` and |
|
215 | 213 | - The last-ditch optimizer has been switched back to `GenSA::GenSA()` from |
216 | 214 | `RcppDE::DEoptim()`. |
217 | 215 |
|
218 | | -### Bug fixes |
| 216 | +## Bug fixes |
219 | 217 |
|
220 | 218 | - The **grid** parameters available for _edges_ are now correctly specified in |
221 | 219 | the manual for `plot.euler()`. |
222 | 220 | - `euler.data.frame()` now works as expected for tibbles (from the **tibble** |
223 | 221 | package) when argument `by` is used. |
224 | 222 |
|
225 | | -## eulerr 4.0.0 |
| 223 | +# eulerr 4.0.0 |
226 | 224 |
|
227 | | -### Major changes |
| 225 | +## Major changes |
228 | 226 |
|
229 | 227 | - `plot.euler()` has been rewritten completely from scratch, now using |
230 | 228 | a custom **grid**-based implementation rather than **lattice**. As a result, |
|
240 | 238 | - A new function `eulerr_options()` have been provided in order to set |
241 | 239 | default graphical parameters for the diagrams. |
242 | 240 |
|
243 | | -### Minor changes |
| 241 | +## Minor changes |
244 | 242 |
|
245 | 243 | - Arguments `counts` and `outer_strips` to `plot.euler()` are now defunct. |
246 | 244 | - `euler()` now always returns ellipse-based parameters |
|
251 | 249 | - Layouts are now partially normalized so that diagrams will look |
252 | 250 | approximately the same even with different random seeds. |
253 | 251 |
|
254 | | -### Bug fixes |
| 252 | +## Bug fixes |
255 | 253 |
|
256 | 254 | - Providing custom labels to `quantities` and `labels` arguments of |
257 | 255 | `plot.euler()` now works correctly (##20). |
258 | 256 |
|
259 | | -## eulerr 3.1.0 |
| 257 | +# eulerr 3.1.0 |
260 | 258 |
|
261 | | -### Major changes |
| 259 | +## Major changes |
262 | 260 |
|
263 | 261 | - The last-ditch optimizer switched from `GenSA::GenSA()` to |
264 | 262 | `RcppDE::DEoptim()`. |
|
267 | 265 | - In final optimization, we now use _stress_ instead of residual sums |
268 | 266 | of squares as a target for our optimizer. |
269 | 267 |
|
270 | | -### Minor changes |
| 268 | +## Minor changes |
271 | 269 |
|
272 | 270 | - `label` is now a proper generic with an appropriate method (`label.euler()`). |
273 | 271 | - The **eulerr under the hood** vignette has received a substantial update. |
274 | 272 |
|
275 | | -### Bug fixes |
| 273 | +## Bug fixes |
276 | 274 |
|
277 | 275 | - Fixed warnings resulting from the deprecated `counts` argument in one |
278 | 276 | of the vignettes. |
279 | 277 | - Fixed memcheck errors in the final optimizer. |
280 | 278 | - Corrected erroneous labeling when `auto.key = TRUE` and labels were |
281 | 279 | _not_ in alphabetic order. (##15) |
282 | 280 |
|
283 | | -## eulerr 3.0.1 |
| 281 | +# eulerr 3.0.1 |
284 | 282 |
|
285 | | -### Bug fixes |
| 283 | +## Bug fixes |
286 | 284 |
|
287 | 285 | - Added the missing %\\VignetteEngine{knitr::knitr} to both vignettes. It had |
288 | 286 | mistakenly been left out, which had mangled the resulting vignettes. |
289 | 287 |
|
290 | | -## eulerr 3.0.0 |
| 288 | +# eulerr 3.0.0 |
291 | 289 |
|
292 | | -### Major changes |
| 290 | +## Major changes |
293 | 291 |
|
294 | 292 | - Ellipses are now supported by setting the new argument `shape = "ellipse"` |
295 | 293 | in `euler()`. This functionality accompanies an overhaul of the |
|
308 | 306 | - The initial optimizer now uses an analytical Hessian in addition to |
309 | 307 | gradient. |
310 | 308 |
|
311 | | -### Minor changes |
| 309 | +## Minor changes |
312 | 310 |
|
313 | 311 | - The initial optimizer now restarts up to 10 times and picks the best |
314 | 312 | fit (unless it is perfect somewhere along the way). |
|
327 | 325 | [v2.0.0](https://github.com/jolars/eulerr/releases/tag/v2.0.0) has been made |
328 | 326 | defunct. |
329 | 327 |
|
330 | | -## eulerr 2.0.0 |
| 328 | +# eulerr 2.0.0 |
331 | 329 |
|
332 | | -### Major changes |
| 330 | +## Major changes |
333 | 331 |
|
334 | 332 | - `eulerr()` has been replaced with `euler()` (see update 1.1.0) and made |
335 | 333 | defunct. |
|
343 | 341 | - Arguments `polygon_args`, `mar`, and `text_args` to `plot.euler()` have been |
344 | 342 | made defunct. |
345 | 343 |
|
346 | | -### Minor changes |
| 344 | +## Minor changes |
347 | 345 |
|
348 | 346 | - `plot.euler()` handles conflicting arguments better. |
349 | 347 | - c++ routines in `eulerr` now use registration. |
|
356 | 354 | - Argument `fill_opacity` is softly deprecated and has been replaced with |
357 | 355 | `fill_alpha` for consistency with other lattice functions. |
358 | 356 |
|
359 | | -### Bug fixes |
| 357 | +## Bug fixes |
360 | 358 |
|
361 | 359 | - `border` argument in `plot.euler()` works again (##7). |
362 | 360 |
|
363 | | -## eulerr 1.1.0 |
| 361 | +# eulerr 1.1.0 |
364 | 362 |
|
365 | | -### Major changes |
| 363 | +## Major changes |
366 | 364 |
|
367 | 365 | - `eulerr()` and its related methods been deprecated and are being replaced by |
368 | 366 | `euler()`, which takes slightly different input. Notably, the default is |
|
373 | 371 | lattice. As a result, arguments `polygon_args`, `mar`, and `text_args` have been |
374 | 372 | deprecated. |
375 | 373 |
|
376 | | -### Minor changes |
| 374 | +## Minor changes |
377 | 375 |
|
378 | 376 | - Added a `counts` argument to `plot.eulerr`, which intersections and |
379 | 377 | complements with counts from the original set specification (##6). |
|
392 | 390 | - `euler()` now uses `nlm()` instead of `optim(method = "Nelder-Mead")` for |
393 | 391 | its final optimization. |
394 | 392 |
|
395 | | -### Bug fixes |
| 393 | +## Bug fixes |
396 | 394 |
|
397 | 395 | - The previous algorithm incorrectly computed loss from unions of sets. It now |
398 | 396 | computes loss from disjoint class combinations. |
399 | 397 | - Added missing row breaks in `print.eulerr`. |
400 | 398 |
|
401 | | -## eulerr 1.0.0 |
| 399 | +# eulerr 1.0.0 |
402 | 400 |
|
403 | | -### New features |
| 401 | +## New features |
404 | 402 |
|
405 | 403 | - Final optimization routines have been completely rewritten in C++ using Rcpp |
406 | 404 | and RcppArmadillo. |
|
413 | 411 | - Improved label placement by using a two-dimensional kernel density estimation |
414 | 412 | instead of means to calculate label centers. |
415 | 413 |
|
416 | | -### Bug fixes and minor improvements |
| 414 | +## Bug fixes and minor improvements |
417 | 415 |
|
418 | 416 | - Cleaned up typos and grammar errors in the _Introduction to eulerr_ vignette. |
419 | 417 | - Added `mar` argument to `plot.eulerr` with a default that produces |
|
424 | 422 | - Added a `print.eulerr` method. |
425 | 423 | - Updated vignette to cover new features and changes. |
426 | 424 |
|
427 | | -## eulerr 0.1.0 |
| 425 | +# eulerr 0.1.0 |
428 | 426 |
|
429 | 427 | - The first release. |
0 commit comments