From 2026254b96b212456e1feea262cabc592c707016 Mon Sep 17 00:00:00 2001 From: yabwon Date: Tue, 5 Oct 2021 12:06:08 +0200 Subject: [PATCH] BasePlus, version 0.994 **BasePlus, version 0.994** Updates to the `%rainCloudPlot()` macro: - new parameters, -doc. updated. --- README.md | 4 +-- packages/README.md | 4 +-- packages/SHA256_for_packages.txt | 3 ++ packages/baseplus.md | 47 +++++++++++++++++++++++-------- packages/baseplus.zip | Bin 70327 -> 70738 bytes 5 files changed, 43 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index b763ad5..fced439 100644 --- a/README.md +++ b/README.md @@ -144,7 +144,7 @@ SHA256 digest for macroArray: 849629D3AF3FE3AB45D86990E303F1D5E4D5F9F31C8ED6864C [Documentation for macroArray](https://github.com/yabwon/SAS_PACKAGES/blob/main/packages/macroarray.md "Documentation for macroArray") -- **BasePlus**\[0.993\] adds a bunch of functionalities I am missing in BASE SAS, such as: +- **BasePlus**\[0.994\] adds a bunch of functionalities I am missing in BASE SAS, such as: ```sas call arrMissToRight(myArray); call arrFillMiss(17, myArray); @@ -158,7 +158,7 @@ format x bool.; %put %getVars(sashelp.class, pattern = ght$, sep = +, varRange = _numeric_); ``` -SHA256 digest for BasePlus: 5EAEF846754F19759C0492308478417C9667C9651F1EF14F70E4FF8AB4C857F6 +SHA256 digest for BasePlus: D01BDFB50EF023EF51806F5F0ED664523C1A6F25AA2778808558C212E6D74725 [Documentation for BasePlus](https://github.com/yabwon/SAS_PACKAGES/blob/main/packages/baseplus.md "Documentation for BasePlus") diff --git a/packages/README.md b/packages/README.md index 5b3388d..14b114b 100644 --- a/packages/README.md +++ b/packages/README.md @@ -90,7 +90,7 @@ SHA256 digest for macroArray: 849629D3AF3FE3AB45D86990E303F1D5E4D5F9F31C8ED6864C --- -- **BasePlus**\[0.993\] adds a bunch of functionalities I am missing in BASE SAS, such as: +- **BasePlus**\[0.994\] adds a bunch of functionalities I am missing in BASE SAS, such as: ```sas call arrMissToRight(myArray); call arrFillMiss(17, myArray); @@ -104,7 +104,7 @@ format x bool.; %put %getVars(sashelp.class, pattern = ght$, sep = +, varRange = _numeric_); ``` -SHA256 digest for BasePlus: 5EAEF846754F19759C0492308478417C9667C9651F1EF14F70E4FF8AB4C857F6 +SHA256 digest for BasePlus: D01BDFB50EF023EF51806F5F0ED664523C1A6F25AA2778808558C212E6D74725 [Documentation for BasePlus](https://github.com/yabwon/SAS_PACKAGES/blob/main/packages/baseplus.md "Documentation for BasePlus") diff --git a/packages/SHA256_for_packages.txt b/packages/SHA256_for_packages.txt index b4629bc..2171087 100644 --- a/packages/SHA256_for_packages.txt +++ b/packages/SHA256_for_packages.txt @@ -1,3 +1,6 @@ +/* 20211005 */ +BasePlus: D01BDFB50EF023EF51806F5F0ED664523C1A6F25AA2778808558C212E6D74725 + /* 20211001 */ BasePlus: 5EAEF846754F19759C0492308478417C9667C9651F1EF14F70E4FF8AB4C857F6 diff --git a/packages/baseplus.md b/packages/baseplus.md index 63d82a9..1b4db42 100644 --- a/packages/baseplus.md +++ b/packages/baseplus.md @@ -49,7 +49,7 @@ --- -# The BasePlus package [ver. 0.993] ############################################### +# The BasePlus package [ver. 0.994] ############################################### The **BasePlus** package implements useful functions and functionalities I miss in the BASE SAS. @@ -239,7 +239,7 @@ Package contains: *SAS package generated by generatePackage, version 20210528* The SHA256 hash digest for package BasePlus: -`5EAEF846754F19759C0492308478417C9667C9651F1EF14F70E4FF8AB4C857F6` +`D01BDFB50EF023EF51806F5F0ED664523C1A6F25AA2778808558C212E6D74725` --- # Content description ############################################################################################ @@ -3015,7 +3015,11 @@ The basic syntax is the following, the `<...>` means optional parameters: <,formated=> <,y2axis=> <,y2axisLevels=> - + <,y2axisValueAttrs=> + <,xaxisValueAttrs=> + <,xaxisTickstyle=> + + <,VSCALE=> <,KERNEL_K=> <,KERNEL_C=> @@ -3109,6 +3113,17 @@ The basic syntax is the following, the `<...>` means optional parameters: Indicates if the number of expected levels of values printed on the right vertical axix. +* `y2axisValueAttrs` - *Optional*, default value `Color=Grey`. + Allows to modify Y2 axis values attributes. + +* `xaxisValueAttrs` - *Optional*, default value `Color=Grey`. + Allows to modify X axis values attributes. + +* `xaxisTickstyle` - *Optional*, default value `INSIDE`. + Allows to modify X axis tick style. + Allowed values are `OUTSIDE`, `INSIDE`, `ACROSS`, and `INBETWEEN`. + *For SAS previous to* **9.4M5** *set to missing!* + ***Stat related options***: * `VSCALE` - *Optional*, default value `Proportion`. @@ -3132,7 +3147,9 @@ The basic syntax is the following, the `<...>` means optional parameters: * `cleanTempData` - *Optional*, default value `1`. Indicates if temporary data sets should be deleted. -**NOTES:** +--- + +### NOTES: ################################################################### * Default value of the `title` option is: `%nrstr(title1 JUSTIFY=C "Rain Cloud plot for &list_g. by " %unquote(&xLabel.);)` @@ -3159,13 +3176,21 @@ The basic syntax is the following, the `<...>` means optional parameters: `BlueViolet`, `RoyalBlue`, `OliveDrab`, `Gold`, `HotPink`, `Crimson`, `MediumPurple`, `CornflowerBlue`, `YellowGreen`, `Goldenrod`, `Orchid`, `IndianRed`. -* The box-plot has the following interpretation: - - left vertical bar indicates the minimum, - - left whisker line starts at `max(Q1 - 1.5IQR, minimum)` and ends at lower quartile (Q1), - - diamond indicates mean, - - vertical bar inside of the box indicates median. - - right whisker line starts at upper quartile (Q3) and ends at `min(Q3 + 1.5IQR, maximum)`, - - right vertical bar indicates the maximum. +### BOX-AND-WHISKERS PLOT: ################################################################### + +The box-and-whiskers plot has the following interpretation: +- left vertical bar indicates the minimum, +- left whisker line starts at `max(Q1 - 1.5IQR, minimum)` and ends at lower quartile (Q1), +- diamond indicates mean, +- vertical bar inside of the box indicates median, +- right whisker line starts at upper quartile (Q3) and ends at `min(Q3 + 1.5IQR, maximum)`, +- right vertical bar indicates the maximum. + +With above setup it may happen that +there is a gap between the minimum marker and the beginning of the left whisker +or +there is a gap between the end of the right whisker and the maximum marker. +See examples below. --- diff --git a/packages/baseplus.zip b/packages/baseplus.zip index 51340c0d60402d28af11d01823f948633339cabb..00443b061d58e2d68a1ec0fcf0bf380c547e457d 100644 GIT binary patch delta 15683 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 delta 15388 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