├── .DS_Store ├── .Rbuildignore ├── .github ├── .gitignore ├── ISSUE_TEMPLATE │ ├── bug_report.md │ └── feature_request.md └── workflows │ ├── R-CMD-check.yaml │ ├── check-release.yaml │ ├── check-standard.yaml │ ├── lint.yaml │ ├── pkgdown.yaml │ ├── pr-commands.yaml │ └── test-coverage.yaml ├── .gitignore ├── .travis.yml ├── CODE_OF_CONDUCT.md ├── ChangeLog ├── DESCRIPTION ├── NAMESPACE ├── NEWS.md ├── R ├── adjust_hsv.R ├── angleAxis.R ├── balloonplot.R ├── bandplot.R ├── barplot2.R ├── baseOf.R ├── boxplot2.R ├── bubbleplot.R ├── ci2d.R ├── col2hex.R ├── colorpanel.R ├── heatmap.2.R ├── hist2d.R ├── layout_set.R ├── lmplot2.R ├── lowess.R ├── nobs.R ├── ooplot.R ├── overplot.R ├── plot.lowess.R ├── plot.venn.R ├── plotCI.R ├── plotNode.R ├── plotmeans.R ├── print.ci2d.R ├── print.hist2d.R ├── qqnorm.aov.R ├── reorder.R ├── replaceTabs.R ├── residplot.R ├── rich.colors.R ├── sinkplot.R ├── smartlegend.R ├── space.R ├── textplot.R ├── venn.R ├── vennMembers.R ├── wapply.R └── zzz.R ├── README.md ├── TODO ├── data ├── catch.d.txt ├── catch.r.txt └── rtPCR.rda ├── docs ├── 404.html ├── CODE_OF_CONDUCT.html ├── articles │ ├── index.html │ ├── venn.html │ └── venn_files │ │ └── figure-html │ │ ├── unnamed-chunk-1-1.png │ │ ├── unnamed-chunk-2-1.png │ │ └── unnamed-chunk-3-1.png ├── authors.html ├── bootstrap-toc.css ├── bootstrap-toc.js ├── docsearch.css ├── docsearch.js ├── index.html ├── link.svg ├── news │ └── index.html ├── pkgdown.css ├── pkgdown.js ├── pkgdown.yml ├── reference │ ├── Rplot001.png │ ├── Rplot002.png │ ├── Rplot003.png │ ├── Rplot004.png │ ├── Rplot005.png │ ├── Rplot006.png │ ├── Rplot007.png │ ├── Rplot008.png │ ├── Rplot009.png │ ├── Rplot010.png │ ├── Rplot011.png │ ├── Rplot012.png │ ├── Rplot013.png │ ├── Rplot014.png │ ├── Rplot015.png │ ├── Rplot016.png │ ├── Rplot017.png │ ├── Rplot018.png │ ├── Rplot019.png │ ├── Rplot020.png │ ├── Rplot021.png │ ├── Rplot022.png │ ├── Rplot023.png │ ├── Rplot024.png │ ├── Rplot025.png │ ├── Rplot026.png │ ├── Rplot027.png │ ├── Rplot028.png │ ├── Rplot029.png │ ├── Rplot030.png │ ├── Rplot031.png │ ├── Rplot032.png │ ├── Rplot033.png │ ├── Rplot034.png │ ├── Rplot035.png │ ├── Rplot036.png │ ├── Rplot037.png │ ├── Rplot038.png │ ├── Rplot039.png │ ├── Rplot040.png │ ├── Rplot041.png │ ├── Rplot042.png │ ├── Rplot043.png │ ├── Rplot044.png │ ├── Rplot045.png │ ├── Rplots.pdf │ ├── Rplots1.pdf │ ├── Rplots10.pdf │ ├── Rplots11.pdf │ ├── Rplots12.pdf │ ├── Rplots13.pdf │ ├── Rplots14.pdf │ ├── Rplots15.pdf │ ├── Rplots16.pdf │ ├── Rplots17.pdf │ ├── Rplots18.pdf │ ├── Rplots19.pdf │ ├── Rplots2.pdf │ ├── Rplots20.pdf │ ├── Rplots21.pdf │ ├── Rplots22.pdf │ ├── Rplots23.pdf │ ├── Rplots24.pdf │ ├── Rplots25.pdf │ ├── Rplots26.pdf │ ├── Rplots27.pdf │ ├── Rplots28.pdf │ ├── Rplots29.pdf │ ├── Rplots3.pdf │ ├── Rplots30.pdf │ ├── Rplots31.pdf │ ├── Rplots32.pdf │ ├── Rplots33.pdf │ ├── Rplots34.pdf │ ├── Rplots35.pdf │ ├── Rplots36.pdf │ ├── Rplots37.pdf │ ├── Rplots38.pdf │ ├── Rplots39.pdf │ ├── Rplots4.pdf │ ├── Rplots40.pdf │ ├── Rplots41.pdf │ ├── Rplots42.pdf │ ├── Rplots43.pdf │ ├── Rplots44.pdf │ ├── Rplots45.pdf │ ├── Rplots46.pdf │ ├── Rplots47.pdf │ ├── Rplots48.pdf │ ├── Rplots49.pdf │ ├── Rplots5.pdf │ ├── Rplots50.pdf │ ├── Rplots51.pdf │ ├── Rplots52.pdf │ ├── Rplots53.pdf │ ├── Rplots54.pdf │ ├── Rplots55.pdf │ ├── Rplots56.pdf │ ├── Rplots57.pdf │ ├── Rplots58.pdf │ ├── Rplots59.pdf │ ├── Rplots6.pdf │ ├── Rplots60.pdf │ ├── Rplots61.pdf │ ├── Rplots62.pdf │ ├── Rplots63.pdf │ ├── Rplots64.pdf │ ├── Rplots65.pdf │ ├── Rplots66.pdf │ ├── Rplots67.pdf │ ├── Rplots68.pdf │ ├── Rplots69.pdf │ ├── Rplots7.pdf │ ├── Rplots8.pdf │ ├── Rplots9.pdf │ ├── adjust_hsv-1.png │ ├── adjust_hsv.html │ ├── angleAxis-1.png │ ├── angleAxis-2.png │ ├── angleAxis-3.png │ ├── angleAxis-4.png │ ├── angleAxis-5.png │ ├── angleAxis-6.png │ ├── angleAxis-7.png │ ├── angleAxis.html │ ├── balloonplot-1.png │ ├── balloonplot-2.png │ ├── balloonplot-3.png │ ├── balloonplot-4.png │ ├── balloonplot-5.png │ ├── balloonplot.html │ ├── bandplot-1.png │ ├── bandplot-2.png │ ├── bandplot-3.png │ ├── bandplot-4.png │ ├── bandplot-5.png │ ├── bandplot-6.png │ ├── bandplot.html │ ├── barplot2-1.png │ ├── barplot2-2.png │ ├── barplot2-3.png │ ├── barplot2-4.png │ ├── barplot2-5.png │ ├── barplot2-6.png │ ├── barplot2-7.png │ ├── barplot2-8.png │ ├── barplot2.html │ ├── boxplot2-1.png │ ├── boxplot2-2.png │ ├── boxplot2-3.png │ ├── boxplot2.html │ ├── bubbleplot-1.png │ ├── bubbleplot-10.png │ ├── bubbleplot-11.png │ ├── bubbleplot-12.png │ ├── bubbleplot-13.png │ ├── bubbleplot-14.png │ ├── bubbleplot-15.png │ ├── bubbleplot-2.png │ ├── bubbleplot-3.png │ ├── bubbleplot-4.png │ ├── bubbleplot-5.png │ ├── bubbleplot-6.png │ ├── bubbleplot-7.png │ ├── bubbleplot-8.png │ ├── bubbleplot-9.png │ ├── bubbleplot.html │ ├── catch.d-1.png │ ├── catch.d-2.png │ ├── catch.d-3.png │ ├── catch.d-4.png │ ├── catch.d-5.png │ ├── catch.d-6.png │ ├── catch.d-7.png │ ├── catch.d.html │ ├── ci2d-1.png │ ├── ci2d-10.png │ ├── ci2d-11.png │ ├── ci2d-12.png │ ├── ci2d-13.png │ ├── ci2d-14.png │ ├── ci2d-15.png │ ├── ci2d-16.png │ ├── ci2d-17.png │ ├── ci2d-18.png │ ├── ci2d-19.png │ ├── ci2d-2.png │ ├── ci2d-20.png │ ├── ci2d-21.png │ ├── ci2d-3.png │ ├── ci2d-4.png │ ├── ci2d-5.png │ ├── ci2d-6.png │ ├── ci2d-7.png │ ├── ci2d-8.png │ ├── ci2d-9.png │ ├── ci2d.html │ ├── col2hex.html │ ├── colorpanel-1.png │ ├── colorpanel.html │ ├── gplots-defunct.html │ ├── gplots-deprecated.html │ ├── heatmap.2-1.png │ ├── heatmap.2-10.png │ ├── heatmap.2-11.png │ ├── heatmap.2-12.png │ ├── heatmap.2-13.png │ ├── heatmap.2-14.png │ ├── heatmap.2-15.png │ ├── heatmap.2-16.png │ ├── heatmap.2-17.png │ ├── heatmap.2-18.png │ ├── heatmap.2-19.png │ ├── heatmap.2-2.png │ ├── heatmap.2-20.png │ ├── heatmap.2-21.png │ ├── heatmap.2-22.png │ ├── heatmap.2-23.png │ ├── heatmap.2-24.png │ ├── heatmap.2-25.png │ ├── heatmap.2-26.png │ ├── heatmap.2-27.png │ ├── heatmap.2-28.png │ ├── heatmap.2-29.png │ ├── heatmap.2-3.png │ ├── heatmap.2-30.png │ ├── heatmap.2-31.png │ ├── heatmap.2-32.png │ ├── heatmap.2-33.png │ ├── heatmap.2-34.png │ ├── heatmap.2-35.png │ ├── heatmap.2-36.png │ ├── heatmap.2-37.png │ ├── heatmap.2-38.png │ ├── heatmap.2-39.png │ ├── heatmap.2-4.png │ ├── heatmap.2-40.png │ ├── heatmap.2-41.png │ ├── heatmap.2-42.png │ ├── heatmap.2-43.png │ ├── heatmap.2-5.png │ ├── heatmap.2-6.png │ ├── heatmap.2-7.png │ ├── heatmap.2-8.png │ ├── heatmap.2-9.png │ ├── heatmap.2.html │ ├── hist2d-1.png │ ├── hist2d-2.png │ ├── hist2d-3.png │ ├── hist2d-4.png │ ├── hist2d-5.png │ ├── hist2d-6.png │ ├── hist2d.html │ ├── index.html │ ├── lmplot2-1.png │ ├── lmplot2-10.png │ ├── lmplot2-2.png │ ├── lmplot2-3.png │ ├── lmplot2-4.png │ ├── lmplot2-5.png │ ├── lmplot2-6.png │ ├── lmplot2-7.png │ ├── lmplot2-8.png │ ├── lmplot2-9.png │ ├── lmplot2.html │ ├── lowess-1.png │ ├── lowess-10.png │ ├── lowess-11.png │ ├── lowess-2.png │ ├── lowess-3.png │ ├── lowess-4.png │ ├── lowess-5.png │ ├── lowess-6.png │ ├── lowess-7.png │ ├── lowess-8.png │ ├── lowess-9.png │ ├── lowess.html │ ├── nobs.html │ ├── ooplot-1.png │ ├── ooplot-2.png │ ├── ooplot-3.png │ ├── ooplot-4.png │ ├── ooplot-5.png │ ├── ooplot-6.png │ ├── ooplot-7.png │ ├── ooplot.html │ ├── overplot-1.png │ ├── overplot-2.png │ ├── overplot.html │ ├── plotCI-1.png │ ├── plotCI-10.png │ ├── plotCI-11.png │ ├── plotCI-2.png │ ├── plotCI-3.png │ ├── plotCI-4.png │ ├── plotCI-5.png │ ├── plotCI-6.png │ ├── plotCI-7.png │ ├── plotCI-8.png │ ├── plotCI-9.png │ ├── plotCI.html │ ├── plotmeans-1.png │ ├── plotmeans-2.png │ ├── plotmeans-3.png │ ├── plotmeans-4.png │ ├── plotmeans.html │ ├── qqnorm.aov-1.png │ ├── qqnorm.aov.html │ ├── reorder.html │ ├── residplot.html │ ├── rich.colors-1.png │ ├── rich.colors-2.png │ ├── rich.colors-3.png │ ├── rich.colors-4.png │ ├── rich.colors-5.png │ ├── rich.colors-6.png │ ├── rich.colors.html │ ├── rtPCR-1.png │ ├── rtPCR-2.png │ ├── rtPCR.html │ ├── sinkplot-1.png │ ├── sinkplot.html │ ├── space-1.png │ ├── space-2.png │ ├── space.html │ ├── textplot.html │ ├── venn-1.png │ ├── venn-2.png │ ├── venn-3.png │ ├── venn-4.png │ ├── venn-5.png │ ├── venn-6.png │ ├── venn.html │ ├── wapply-1.png │ ├── wapply-2.png │ └── wapply.html └── sitemap.xml ├── gplots.Rproj ├── inst ├── ChangeLog ├── NEWS ├── TODO └── venn.Rnw ├── man ├── adjust_hsv.Rd ├── angleAxis.Rd ├── balloonplot.Rd ├── bandplot.Rd ├── barplot2.Rd ├── boxplot2.Rd ├── bubbleplot.Rd ├── catch.d.Rd ├── ci2d.Rd ├── col2hex.Rd ├── colorpanel.Rd ├── gplots-defunct.Rd ├── gplots-deprecated.Rd ├── heatmap.2.Rd ├── hist2d.Rd ├── lmplot2.Rd ├── lowess.Rd ├── ooplot.Rd ├── overplot.Rd ├── plotCI.Rd ├── plotmeans.Rd ├── qqnorm.aov.Rd ├── reorder.Rd ├── residplot.Rd ├── rich.colors.Rd ├── rtPCR.Rd ├── sinkplot.Rd ├── space.Rd ├── textplot.Rd ├── venn.Rd └── wapply.Rd ├── tests ├── adjust_hsv.R ├── dat.csv ├── heatmap2Test.R ├── heatmap2Test.Rout.save ├── heatmap_to_heatmap.2_test.R ├── plotmeans_nobars.R ├── test.reorder.factor.R └── test_plottingDeepDendrogram.R └── vignettes └── venn.Rmd /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/.DS_Store -------------------------------------------------------------------------------- /.Rbuildignore: -------------------------------------------------------------------------------- 1 | ^.*\.Rproj$ 2 | ^\.Rproj\.user$ 3 | ^\.travis\.yml$ 4 | ^CONDUCT\.md$ 5 | TODO\.txt 6 | vignettes/\.build\.timestamp 7 | Makefile 8 | Rplot001.jpg 9 | 10 | ^.*\.Rproj$ 11 | ^\.Rproj\.user$ 12 | ^\.travis\.yml$ 13 | ^inst/web$ 14 | ^docs$ 15 | ^_pkgdown\.yml$ 16 | ^README\.Rmd$ 17 | ^README-.*\.png$ 18 | ^pkgdown$ 19 | ^codecov\.yml$ 20 | ^CODE_OF_CONDUCT\.md$ 21 | ^LICENSE\.md$ 22 | ^tests/testthat/assets/site-citation$ 23 | ^tests/testthat/assets/site-dot-github/.github$ 24 | ^cran-comments\.md$ 25 | ^CRAN-RELEASE$ 26 | ^revdep$ 27 | ^appveyor\.yml$ 28 | ^\.github$ 29 | ^doc$ 30 | ^Meta$ -------------------------------------------------------------------------------- /.github/.gitignore: -------------------------------------------------------------------------------- 1 | *.html 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: bug 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **To Reproduce** 14 | 15 | Learn how to make a great R reproducible example in the following URL: 16 | https://stackoverflow.com/a/5963610/256662 17 | 18 | And please supply us with such information so that we will be able to help you with solving the issue. 19 | 20 | 21 | 22 | **Expected behavior** 23 | A clear and concise description of what you expected to happen. 24 | 25 | **Screenshots** 26 | If applicable, add screenshots to help explain your problem. 27 | 28 | **Additional context** 29 | Add any other context about the problem here. 30 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: enhancement 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Is your feature request related to a problem? Please describe.** 11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Describe alternatives you've considered** 17 | A clear and concise description of any alternative solutions or features you've considered. 18 | 19 | **Additional context** 20 | Add any other context or screenshots about the feature request here. 21 | -------------------------------------------------------------------------------- /.github/workflows/R-CMD-check.yaml: -------------------------------------------------------------------------------- 1 | on: 2 | push: 3 | branches: [main, master] 4 | pull_request: 5 | branches: [main, master] 6 | 7 | name: R-CMD-check 8 | 9 | jobs: 10 | R-CMD-check: 11 | runs-on: ${{ matrix.config.os }} 12 | 13 | name: ${{ matrix.config.os }} (${{ matrix.config.r }}) 14 | 15 | strategy: 16 | fail-fast: false 17 | matrix: 18 | config: 19 | - {os: macOS-latest, r: 'release'} 20 | - {os: windows-latest, r: 'release'} 21 | - {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'} 22 | - {os: ubuntu-latest, r: 'release'} 23 | - {os: ubuntu-latest, r: 'oldrel-1'} 24 | - {os: ubuntu-latest, r: 'oldrel-2'} 25 | # Removed older versions to avoid compatibility issues 26 | 27 | env: 28 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 29 | R_KEEP_PKG_SOURCE: yes 30 | 31 | steps: 32 | - uses: actions/checkout@v2 33 | 34 | - uses: r-lib/actions/setup-pandoc@v2 35 | 36 | - uses: r-lib/actions/setup-r@v2 37 | with: 38 | r-version: ${{ matrix.config.r }} 39 | http-user-agent: ${{ matrix.config.http-user-agent }} 40 | use-public-rspm: true 41 | 42 | # Install Hmisc with dependencies, only when needed 43 | - name: Install Hmisc package 44 | run: Rscript -e 'if (!requireNamespace("Hmisc", quietly = TRUE)) install.packages("Hmisc", dependencies = TRUE)' 45 | 46 | - uses: r-lib/actions/setup-r-dependencies@v2 47 | with: 48 | extra-packages: any::rcmdcheck 49 | needs: check 50 | 51 | - uses: r-lib/actions/check-r-package@v2 52 | with: 53 | upload-snapshots: true -------------------------------------------------------------------------------- /.github/workflows/check-release.yaml: -------------------------------------------------------------------------------- 1 | # Workflow derived from https://github.com/r-lib/actions/tree/v2/examples 2 | # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help 3 | on: 4 | push: 5 | branches: [main, master] 6 | pull_request: 7 | branches: [main, master] 8 | 9 | name: R-CMD-check 10 | 11 | jobs: 12 | R-CMD-check: 13 | runs-on: ubuntu-latest 14 | env: 15 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 16 | R_KEEP_PKG_SOURCE: yes 17 | steps: 18 | - uses: actions/checkout@v3 19 | 20 | - uses: r-lib/actions/setup-r@v2 21 | with: 22 | use-public-rspm: true 23 | 24 | - uses: r-lib/actions/setup-r-dependencies@v2 25 | with: 26 | extra-packages: any::rcmdcheck 27 | needs: check 28 | 29 | - uses: r-lib/actions/check-r-package@v2 30 | -------------------------------------------------------------------------------- /.github/workflows/check-standard.yaml: -------------------------------------------------------------------------------- 1 | # Workflow derived from https://github.com/r-lib/actions/tree/v2/examples 2 | # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help 3 | on: 4 | push: 5 | branches: [main, master] 6 | pull_request: 7 | branches: [main, master] 8 | 9 | name: R-CMD-check 10 | 11 | jobs: 12 | R-CMD-check: 13 | runs-on: ${{ matrix.config.os }} 14 | 15 | name: ${{ matrix.config.os }} (${{ matrix.config.r }}) 16 | 17 | strategy: 18 | fail-fast: false 19 | matrix: 20 | config: 21 | - {os: macos-latest, r: 'release'} 22 | - {os: windows-latest, r: 'release'} 23 | - {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'} 24 | - {os: ubuntu-latest, r: 'release'} 25 | - {os: ubuntu-latest, r: 'oldrel-1'} 26 | 27 | env: 28 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 29 | R_KEEP_PKG_SOURCE: yes 30 | 31 | steps: 32 | - uses: actions/checkout@v3 33 | 34 | - uses: r-lib/actions/setup-pandoc@v2 35 | 36 | - uses: r-lib/actions/setup-r@v2 37 | with: 38 | r-version: ${{ matrix.config.r }} 39 | http-user-agent: ${{ matrix.config.http-user-agent }} 40 | use-public-rspm: true 41 | 42 | - uses: r-lib/actions/setup-r-dependencies@v2 43 | with: 44 | extra-packages: any::rcmdcheck 45 | needs: check 46 | 47 | - uses: r-lib/actions/check-r-package@v2 48 | with: 49 | upload-snapshots: true 50 | -------------------------------------------------------------------------------- /.github/workflows/lint.yaml: -------------------------------------------------------------------------------- 1 | # Workflow derived from https://github.com/r-lib/actions/tree/v2/examples 2 | # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help 3 | on: 4 | push: 5 | branches: [main, master] 6 | pull_request: 7 | branches: [main, master] 8 | 9 | name: lint 10 | 11 | jobs: 12 | lint: 13 | runs-on: ubuntu-latest 14 | env: 15 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 16 | steps: 17 | - uses: actions/checkout@v3 18 | 19 | - uses: r-lib/actions/setup-r@v2 20 | with: 21 | use-public-rspm: true 22 | 23 | - uses: r-lib/actions/setup-r-dependencies@v2 24 | with: 25 | extra-packages: any::lintr, local::. 26 | needs: lint 27 | 28 | - name: Lint 29 | run: lintr::lint_package() 30 | shell: Rscript {0} 31 | env: 32 | LINTR_ERROR_ON_LINT: false 33 | -------------------------------------------------------------------------------- /.github/workflows/pkgdown.yaml: -------------------------------------------------------------------------------- 1 | # Workflow derived from https://github.com/r-lib/actions/tree/v2/examples 2 | # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help 3 | on: 4 | push: 5 | branches: [main, master] 6 | pull_request: 7 | branches: [main, master] 8 | release: 9 | types: [published] 10 | workflow_dispatch: 11 | 12 | name: pkgdown 13 | 14 | jobs: 15 | pkgdown: 16 | runs-on: ubuntu-latest 17 | # Only restrict concurrency for non-PR jobs 18 | concurrency: 19 | group: pkgdown-${{ github.event_name != 'pull_request' || github.run_id }} 20 | env: 21 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 22 | steps: 23 | - uses: actions/checkout@v3 24 | 25 | - uses: r-lib/actions/setup-pandoc@v2 26 | 27 | - uses: r-lib/actions/setup-r@v2 28 | with: 29 | use-public-rspm: true 30 | 31 | - uses: r-lib/actions/setup-r-dependencies@v2 32 | with: 33 | extra-packages: any::pkgdown, local::. 34 | needs: website 35 | 36 | - name: Build site 37 | run: pkgdown::build_site_github_pages(new_process = FALSE, install = FALSE) 38 | shell: Rscript {0} 39 | 40 | - name: Deploy to GitHub pages 🚀 41 | if: github.event_name != 'pull_request' 42 | uses: JamesIves/github-pages-deploy-action@v4.4.1 43 | with: 44 | clean: false 45 | branch: gh-pages 46 | folder: docs 47 | -------------------------------------------------------------------------------- /.github/workflows/pr-commands.yaml: -------------------------------------------------------------------------------- 1 | # Workflow derived from https://github.com/r-lib/actions/tree/v2/examples 2 | # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help 3 | on: 4 | issue_comment: 5 | types: [created] 6 | 7 | name: Commands 8 | 9 | jobs: 10 | document: 11 | if: ${{ github.event.issue.pull_request && (github.event.comment.author_association == 'MEMBER' || github.event.comment.author_association == 'OWNER') && startsWith(github.event.comment.body, '/document') }} 12 | name: document 13 | runs-on: ubuntu-latest 14 | env: 15 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 16 | steps: 17 | - uses: actions/checkout@v3 18 | 19 | - uses: r-lib/actions/pr-fetch@v2 20 | with: 21 | repo-token: ${{ secrets.GITHUB_TOKEN }} 22 | 23 | - uses: r-lib/actions/setup-r@v2 24 | with: 25 | use-public-rspm: true 26 | 27 | - uses: r-lib/actions/setup-r-dependencies@v2 28 | with: 29 | extra-packages: any::roxygen2 30 | needs: pr-document 31 | 32 | - name: Document 33 | run: roxygen2::roxygenise() 34 | shell: Rscript {0} 35 | 36 | - name: commit 37 | run: | 38 | git config --local user.name "$GITHUB_ACTOR" 39 | git config --local user.email "$GITHUB_ACTOR@users.noreply.github.com" 40 | git add man/\* NAMESPACE 41 | git commit -m 'Document' 42 | 43 | - uses: r-lib/actions/pr-push@v2 44 | with: 45 | repo-token: ${{ secrets.GITHUB_TOKEN }} 46 | 47 | style: 48 | if: ${{ github.event.issue.pull_request && (github.event.comment.author_association == 'MEMBER' || github.event.comment.author_association == 'OWNER') && startsWith(github.event.comment.body, '/style') }} 49 | name: style 50 | runs-on: ubuntu-latest 51 | env: 52 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 53 | steps: 54 | - uses: actions/checkout@v3 55 | 56 | - uses: r-lib/actions/pr-fetch@v2 57 | with: 58 | repo-token: ${{ secrets.GITHUB_TOKEN }} 59 | 60 | - uses: r-lib/actions/setup-r@v2 61 | 62 | - name: Install dependencies 63 | run: install.packages("styler") 64 | shell: Rscript {0} 65 | 66 | - name: Style 67 | run: styler::style_pkg() 68 | shell: Rscript {0} 69 | 70 | - name: commit 71 | run: | 72 | git config --local user.name "$GITHUB_ACTOR" 73 | git config --local user.email "$GITHUB_ACTOR@users.noreply.github.com" 74 | git add \*.R 75 | git commit -m 'Style' 76 | 77 | - uses: r-lib/actions/pr-push@v2 78 | with: 79 | repo-token: ${{ secrets.GITHUB_TOKEN }} 80 | -------------------------------------------------------------------------------- /.github/workflows/test-coverage.yaml: -------------------------------------------------------------------------------- 1 | # Workflow derived from https://github.com/r-lib/actions/tree/v2/examples 2 | # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help 3 | on: 4 | push: 5 | branches: [main, master] 6 | pull_request: 7 | branches: [main, master] 8 | 9 | name: test-coverage.yaml 10 | 11 | permissions: read-all 12 | 13 | jobs: 14 | test-coverage: 15 | runs-on: ubuntu-latest 16 | env: 17 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 18 | 19 | steps: 20 | - uses: actions/checkout@v4 21 | 22 | - uses: r-lib/actions/setup-r@v2 23 | with: 24 | use-public-rspm: true 25 | 26 | - uses: r-lib/actions/setup-r-dependencies@v2 27 | with: 28 | extra-packages: any::covr, any::xml2 29 | needs: coverage 30 | 31 | - name: Test coverage 32 | run: | 33 | cov <- covr::package_coverage( 34 | quiet = FALSE, 35 | clean = FALSE, 36 | install_path = file.path(normalizePath(Sys.getenv("RUNNER_TEMP"), winslash = "/"), "package") 37 | ) 38 | covr::to_cobertura(cov) 39 | shell: Rscript {0} 40 | 41 | - uses: codecov/codecov-action@v4 42 | with: 43 | fail_ci_if_error: ${{ github.event_name != 'pull_request' && true || false }} 44 | file: ./cobertura.xml 45 | plugin: noop 46 | disable_search: true 47 | token: ${{ secrets.CODECOV_TOKEN }} 48 | 49 | - name: Show testthat output 50 | if: always() 51 | run: | 52 | ## -------------------------------------------------------------------- 53 | find '${{ runner.temp }}/package' -name 'testthat.Rout*' -exec cat '{}' \; || true 54 | shell: bash 55 | 56 | - name: Upload test results 57 | if: failure() 58 | uses: actions/upload-artifact@v4 59 | with: 60 | name: coverage-test-failures 61 | path: ${{ runner.temp }}/package -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .Rproj.user 2 | .Rhistory 3 | .RData 4 | .Ruserdata 5 | .Rproj.user 6 | .Rhistory 7 | .RData 8 | TODO.txt 9 | lib 10 | /*.html 11 | vignettes/.build.timestamp 12 | *.jpeg 13 | GDC* 14 | MANIFEST.txt 15 | *.gz 16 | test2.rda 17 | tests/testthat/tmp.* 18 | tmp* 19 | \.\.Rcheck 20 | vignettes/*.R 21 | doc 22 | Meta -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: r 2 | sudo: required 3 | warnings_are_errors: true 4 | 5 | after_success: 6 | - Rscript -e 'library(covr); codecov()' 7 | 8 | r_github_packages: 9 | - hadley/testthat # for skip_if_not_installed 10 | -------------------------------------------------------------------------------- /DESCRIPTION: -------------------------------------------------------------------------------- 1 | Package: gplots 2 | Title: Various R Programming Tools for Plotting Data 3 | Description: Various R programming tools for plotting data, including: 4 | - calculating and plotting locally smoothed summary function as 5 | ('bandplot', 'wapply'), 6 | - enhanced versions of standard plots ('barplot2', 'boxplot2', 7 | 'heatmap.2', 'smartlegend'), 8 | - manipulating colors ('col2hex', 'colorpanel', 'redgreen', 9 | 'greenred', 'bluered', 'redblue', 'rich.colors'), 10 | - calculating and plotting two-dimensional data summaries ('ci2d', 11 | 'hist2d'), 12 | - enhanced regression diagnostic plots ('lmplot2', 'residplot'), 13 | - formula-enabled interface to 'stats::lowess' function ('lowess'), 14 | - displaying textual data in plots ('textplot', 'sinkplot'), 15 | - plotting dots whose size reflects the relative magnitude of the 16 | elements ('balloonplot', 'bubbleplot'), 17 | - plotting "Venn" diagrams ('venn'), 18 | - displaying Open-Office style plots ('ooplot'), 19 | - plotting multiple data on same region, with separate axes 20 | ('overplot'), 21 | - plotting means and confidence intervals ('plotCI', 'plotmeans'), 22 | - spacing points in an x-y plot so they don't overlap ('space'). 23 | Depends: R (>= 3.0) 24 | Imports: gtools, stats, caTools, KernSmooth, methods 25 | Suggests: grid, MASS, knitr, rmarkdown, r2d2, nlme 26 | LazyData: yes 27 | VignetteBuilder: knitr 28 | Version: 3.2.0 29 | Date: 2024-10-05 30 | Authors@R: c( 31 | person("Gregory R.", "Warnes", , role = "aut"), 32 | person("Ben", "Bolker", , role = "aut"), 33 | person("Lodewijk", "Bonebakker", , role = "aut"), 34 | person("Robert", "Gentleman", role = "aut"), 35 | person("Wolfgang", "Huber", role = "aut"), 36 | person("Andy", "Liaw", role = "aut"), 37 | person("Thomas", "Lumley", role = "aut"), 38 | person("Martin", "Maechler", role = "aut"), 39 | person("Arni", "Magnusson", role = "aut"), 40 | person("Steffen", "Moeller", role = "aut"), 41 | person("Marc", "Schwartz", role = "aut"), 42 | person("Bill", "Venables", role = "aut"), 43 | person("Tal", "Galili", , "tal.galili@gmail.com", c("aut", "cre")) 44 | ) 45 | License: GPL-2 46 | URL: https://github.com/talgalili/gplots, https://talgalili.github.io/gplots/ 47 | BugReports: https://github.com/talgalili/gplots/issues 48 | NeedsCompilation: no 49 | -------------------------------------------------------------------------------- /NAMESPACE: -------------------------------------------------------------------------------- 1 | export( 2 | adjust_hsv, 3 | angleAxis, 4 | balloonplot, 5 | bandplot, 6 | barplot2, 7 | bluered, 8 | boxplot2, 9 | bubbleplot, 10 | ci2d, 11 | col2hex, 12 | colorpanel, 13 | greenred, 14 | heatmap.2, 15 | hist2d, 16 | lmplot2, 17 | lowess, 18 | ooplot, 19 | overplot, 20 | panel.overplot, 21 | plot.venn, 22 | plotCI, 23 | plotLowess, 24 | plotmeans, 25 | qqnorm.aov, 26 | redblue, 27 | redgreen, 28 | residplot, 29 | rich.colors, 30 | sinkplot, 31 | smartlegend, 32 | space, 33 | textplot, 34 | venn, 35 | wapply, 36 | reorder.factor 37 | ) 38 | 39 | importFrom(gtools, invalid) 40 | importFrom(gtools, odd) 41 | importFrom(gtools, mixedsort) 42 | 43 | importFrom(stats, reorder) 44 | importFrom(stats, na.omit) 45 | importFrom(stats, nobs) 46 | 47 | importFrom(caTools, runsd) 48 | importFrom(caTools, runmean) 49 | 50 | importFrom(KernSmooth, bkde2D) 51 | importFrom(KernSmooth, dpik) 52 | 53 | importFrom(utils, type.convert) 54 | 55 | S3method(balloonplot, default) 56 | S3method(balloonplot, table) 57 | 58 | S3method(bandplot, default) 59 | S3method(bandplot, formula) 60 | 61 | S3method(barplot2, default) 62 | 63 | S3method(bubbleplot, default) 64 | S3method(bubbleplot, formula) 65 | 66 | S3method(lowess, default) 67 | S3method(lowess, formula) 68 | 69 | S3method(ooplot, default) 70 | 71 | S3method(plot, lowess) 72 | S3method(plot, venn) 73 | 74 | S3method(print, ci2d) 75 | S3method(print, hist2d) 76 | 77 | S3method(qqnorm, aov) 78 | 79 | S3method(textplot, character) 80 | S3method(textplot, data.frame) 81 | S3method(textplot, default) 82 | S3method(textplot, matrix) 83 | 84 | S3method(reorder, factor) 85 | 86 | # imports recommended by R CMD check 87 | importFrom("grDevices", "col2rgb", "contourLines", "dev.flush", 88 | "dev.hold", "dev.interactive", "heat.colors", "hsv", "rgb", 89 | "rgb2hsv", "topo.colors") 90 | 91 | importFrom("graphics", "abline", "arrows", "axTicks", "axis", 92 | "barplot", "contour", "filled.contour", "grid", "hist", 93 | "identify", "image", "layout", "legend", "lines", 94 | "matlines", "matpoints", "mtext", "panel.smooth", "par", 95 | "plot", "plot.default", "plot.new", "plot.window", "points", 96 | "polygon", "rect", "segments", "strheight", "strwidth", 97 | "text", "title", "xinch", "yinch") 98 | 99 | importFrom("stats", "as.dendrogram", "cooks.distance", "density", 100 | "deviance", "df.residual", "dist", "dnorm", "effects", 101 | "expand.model.frame", "fitted", "hclust", "is.leaf", 102 | "lm.influence", "median", "model.frame", "order.dendrogram", 103 | "ppoints", "predict", "qnorm", "qqline", "qqnorm", "qt", 104 | "residuals", "sd", "var", "weights") 105 | 106 | importFrom("utils", "str") 107 | 108 | importFrom("methods", "is") 109 | -------------------------------------------------------------------------------- /R/adjust_hsv.R: -------------------------------------------------------------------------------- 1 | adjust_hsv <- function(col, h=NULL, s=NULL, v=NULL, alpha=NULL) 2 | { 3 | # Recursion if vector of colors is passed 4 | if(length(col) > 1) 5 | { 6 | unname(sapply(col, adjust_hsv, h=h, s=s, v=v, alpha=alpha)) 7 | } 8 | else 9 | { 10 | # Convert color to HSV space 11 | col.rgb <- col2rgb(col, alpha=TRUE) 12 | col.hsv <- rgb2hsv(col.rgb[1:3,]) 13 | 14 | # Adjust h, s, v, a 15 | h <- if(is.null(h)) col.hsv["h",] else h 16 | s <- if(is.null(s)) col.hsv["s",] else s 17 | v <- if(is.null(v)) col.hsv["v",] else v 18 | a <- if(is.null(alpha)) col.rgb["alpha",]/255 else alpha 19 | 20 | # Convert new color to hexadecimal RGB format 21 | col.new <- hsv(h, s, v, a) 22 | 23 | # Remove alpha if original color did not have it and user didn't specify one 24 | if(!grepl("#.{8}", col) && is.null(alpha)) 25 | col.new <- substring(col.new, 1, 7) 26 | 27 | col.new 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /R/angleAxis.R: -------------------------------------------------------------------------------- 1 | angleAxis <- function(side, labels, at=1:length(labels), srt=45, adj, xpd=TRUE, ...) 2 | { 3 | usr <- par("usr") 4 | emH <- strheight("M") 5 | emW <- strwidth("M") 6 | 7 | if(missing(adj)) 8 | adj <- switch(side, 1, 1, 0, 0) 9 | 10 | switch(side, 11 | #1 - below 12 | text(x=at, y=usr[3]-emH/2, labels=labels, srt=srt, adj=adj, xpd=xpd, ...), 13 | #2 - left 14 | text(x=usr[1]-emW/2, y=at, labels=labels, srt=srt, adj=adj, xpd=xpd, ...), 15 | #3 - above 16 | text(x=at, y=usr[4]+emH/2, labels=labels, srt=srt, adj=adj, xpd=xpd, ...), 17 | #4 - right 18 | text(x=usr[2]+emW/2, y=at, labels=labels, srt=srt, adj=adj, xpd=xpd, ...) 19 | ) 20 | 21 | invisible(NULL) 22 | } -------------------------------------------------------------------------------- /R/bandplot.R: -------------------------------------------------------------------------------- 1 | # $Id: bandplot.R 1906 2014-12-02 01:46:35Z warnes $ 2 | 3 | bandplot <- function(x, ...) 4 | UseMethod("bandplot") 5 | 6 | bandplot.default <- function(x, y, 7 | ..., 8 | add=FALSE, 9 | sd=c(-2:2), 10 | sd.col=c("magenta","blue","red", 11 | "blue","magenta"), 12 | sd.lwd=c(2,2,3,2,2), 13 | sd.lty=c(2,1,1,1,2), 14 | method="frac", width=1/5, 15 | n=50 16 | ) 17 | { 18 | 19 | if(length(sd.col)0 || i>0) { 12 | #print(paste("i=",i," remainder=",remainder)) 13 | m<-remainder%%b 14 | if (is.null(ret)) { 15 | ret<-m 16 | } 17 | else { 18 | ret<-c(m,ret) 19 | } 20 | remainder <- remainder %/% b 21 | i<-i-1 22 | } 23 | return(ret) 24 | } 25 | 26 | -------------------------------------------------------------------------------- /R/boxplot2.R: -------------------------------------------------------------------------------- 1 | # $Id: boxplot2.R 2052 2015-06-02 19:03:20Z warnes $ 2 | boxplot.n <- function( ..., top=FALSE, shrink=1.0, textcolor=NULL ) 3 | { 4 | .Defunct("boxplot2", package="gplots") 5 | } 6 | 7 | boxplot2 <- function( ..., top=FALSE, shrink=1.0, textcolor=NULL ) 8 | { 9 | boxcall <- match.call() # get call 10 | boxcall$top <- boxcall$shrink <- boxcall$textcolor <- NULL 11 | boxcall[[1]] <- as.name("boxplot") 12 | 13 | box <- eval(boxcall, parent.frame()) 14 | mids <- 1:length(box$n) 15 | 16 | if(top) 17 | { 18 | where <- par("usr")[4] 19 | adj <- c(0.5,1) 20 | } 21 | else 22 | { 23 | where <- par("usr")[3] 24 | adj <- c(0.5,0) 25 | } 26 | tcex <- par("cex") 27 | par(cex=shrink*tcex) 28 | 29 | text(x=mids, y=where, labels=paste("n=",box$n,sep=""), adj=adj, 30 | col=textcolor) 31 | 32 | par(cex=tcex) 33 | 34 | invisible(box) 35 | } 36 | 37 | -------------------------------------------------------------------------------- /R/bubbleplot.R: -------------------------------------------------------------------------------- 1 | bubbleplot <- function(x, ...) 2 | { 3 | UseMethod("bubbleplot") 4 | } 5 | 6 | bubbleplot.default <- function(x, y, z, std=TRUE, pow=0.5, add=FALSE, rev=FALSE, 7 | type="p", ylim=NULL, xlab=NULL, ylab=NULL, 8 | pch=c(16,1), cex.points=1, col="black", 9 | bg=par("bg"), ...) 10 | { 11 | pch <- rep(pch, length.out=2) 12 | col <- rep(col, length.out=2) 13 | bg <- rep(bg, length.out=2) 14 | 15 | if(is.matrix(x)) # matrix or table 16 | { 17 | dnn <- names(dimnames(x)) 18 | if(is.null(xlab)) 19 | xlab <- if(is.null(dnn)) "" else dnn[2] 20 | if(is.null(ylab)) 21 | ylab <- if(is.null(dnn)) "" else dnn[1] 22 | y <- as.data.frame(as.table(x))[[1]] 23 | z <- as.data.frame(as.table(x))[[3]] 24 | x <- as.data.frame(as.table(x))[[2]] 25 | } 26 | 27 | if(is.list(x)) # data.frame or list 28 | { 29 | xyz <- all(c("x","y","z") %in% names(x)) # colnames include x,y,z 30 | if(is.null(xlab)) 31 | xlab <- if(xyz) "x" else names(x)[1] 32 | if(is.null(ylab)) 33 | ylab <- if(xyz) "y" else names(x)[2] 34 | if(xyz) 35 | { 36 | y <- x$y 37 | z <- x$z 38 | x <- x$x 39 | } 40 | else 41 | { 42 | y <- x[[2]] 43 | z <- x[[3]] 44 | x <- x[[1]] 45 | } 46 | } 47 | 48 | if(is.null(xlab)) 49 | xlab <- deparse(substitute(x)) 50 | if(is.null(ylab)) 51 | ylab <- deparse(substitute(y)) 52 | 53 | ## Convert factor to numeric 54 | x <- type.convert(as.character(x), as.is=TRUE) 55 | y <- type.convert(as.character(y), as.is=TRUE) 56 | 57 | if(is.null(ylim)) 58 | ylim <- range(y) 59 | if(rev) 60 | ylim <- rev(ylim) 61 | 62 | if(std) 63 | mycex <- cex.points * (abs(z)/mean(abs(z)))^pow 64 | else 65 | mycex <- cex.points * abs(z)^pow 66 | 67 | if(!add) 68 | suppressWarnings(plot(x, y, type="n", ylim=ylim, xlab=xlab, ylab=ylab, ...)) 69 | suppressWarnings(points(x[z>0], y[z>0], type=type, cex=mycex[z>0], 70 | pch=pch[1], col=col[1], bg=bg[1], ...)) 71 | suppressWarnings(points(x[z<0], y[z<0], type=type, cex=mycex[z<0], 72 | pch=pch[2], col=col[2], bg=bg[2], ...)) 73 | } 74 | 75 | bubbleplot.formula <- function(formula, data, subset, na.action=NULL, ...) 76 | { 77 | m <- match.call(expand.dots=FALSE) 78 | if(is.matrix(eval(m$data,parent.frame()))) 79 | m$data <- as.data.frame(data) 80 | m$... <- NULL 81 | m[[1L]] <- quote(model.frame) 82 | mf <- eval(m, parent.frame()) 83 | 84 | if(ncol(mf) < 3) 85 | stop("formula must have the form z ~ x + y") 86 | 87 | bubbleplot.default(mf[c(2,3,1)], ...) 88 | } 89 | -------------------------------------------------------------------------------- /R/col2hex.R: -------------------------------------------------------------------------------- 1 | col2hex <- function(cname) 2 | { 3 | colMat <- col2rgb(cname) 4 | rgb( 5 | red=colMat[1,]/255, 6 | green=colMat[2,]/255, 7 | blue=colMat[3,]/255 8 | ) 9 | } 10 | -------------------------------------------------------------------------------- /R/colorpanel.R: -------------------------------------------------------------------------------- 1 | # $Id: colorpanel.R 736 2005-11-18 00:16:28Z warnes $ 2 | 3 | colorpanel <- function(n,low,mid,high) 4 | { 5 | if(missing(mid) || missing(high) ) 6 | { 7 | ## convert to rgb 8 | low <- col2rgb(low) 9 | if(missing(high)) 10 | high <- col2rgb(mid) 11 | else 12 | high <- col2rgb(high) 13 | 14 | red <- seq(low[1,1], high[1,1], length=n)/255 15 | green <- seq(low[3,1], high[3,1], length=n)/255 16 | blue <- seq(low[2,1], high[2,1], length=n)/255 17 | } 18 | else # use a center color 19 | { 20 | isodd <- odd(n) 21 | if(isodd) 22 | { 23 | n <- n+1 24 | } 25 | 26 | ## convert to rgb 27 | low <- col2rgb(low) 28 | mid <- col2rgb(mid) 29 | high <- col2rgb(high) 30 | 31 | ## determine length of each component 32 | lower <- floor(n/2) 33 | upper <- n - lower 34 | 35 | red <- c( 36 | seq(low[1,1], mid [1,1], length=lower), 37 | seq(mid[1,1], high[1,1], length=upper) 38 | )/255 39 | 40 | green <- c( 41 | seq(low[3,1], mid [3,1], length=lower), 42 | seq(mid[3,1], high[3,1], length=upper) 43 | )/255 44 | 45 | blue <- c( 46 | seq(low[2,1], mid [2,1], length=lower), 47 | seq(mid[2,1], high[2,1], length=upper) 48 | )/255 49 | 50 | if(isodd) 51 | { 52 | red <- red [-(lower+1)] 53 | green <- green[-(lower+1)] 54 | blue <- blue [-(lower+1)] 55 | } 56 | } 57 | 58 | rgb(red,blue,green) 59 | } 60 | 61 | 62 | 63 | # Generate red-to-green colorscale 64 | redgreen <- function(n) colorpanel(n, 'red', 'black', 'green') 65 | greenred <- function(n) colorpanel(n, 'green', 'black', 'red' ) 66 | bluered <- function(n) colorpanel(n, 'blue','white','red') 67 | redblue <- function(n) colorpanel(n, 'red','white','blue') 68 | -------------------------------------------------------------------------------- /R/hist2d.R: -------------------------------------------------------------------------------- 1 | # $Id: hist2d.R 1555 2012-06-07 16:08:18Z warnes $ 2 | 3 | hist2d <- function(x, 4 | y=NULL, 5 | nbins=200, 6 | same.scale=FALSE, 7 | na.rm=TRUE, 8 | show=TRUE, 9 | col=c("black", heat.colors(12)), 10 | FUN=base::length, 11 | xlab, 12 | ylab, 13 | ... ) 14 | { 15 | if(is.null(y)) 16 | { 17 | if(ncol(x) != 2) stop("If y is ommitted, x must be a 2 column matirx") 18 | y <- x[,2] 19 | x <- x[,1] 20 | } 21 | 22 | if(length(nbins)==1) 23 | nbins <- rep(nbins,2) 24 | 25 | nas <- is.na(x) | is.na(y) 26 | 27 | if(na.rm) 28 | { 29 | x <- x[!nas] 30 | y <- y[!nas] 31 | } 32 | else 33 | stop("missinig values not permitted if na.rm=FALSE") 34 | 35 | if(same.scale) 36 | { 37 | x.cuts <- seq( from=min(x,y), to=max(x,y), length=nbins[1]+1) 38 | y.cuts <- seq( from=min(x,y), to=max(x,y), length=nbins[2]+1) 39 | } 40 | else 41 | { 42 | x.cuts <- seq( from=min(x), to=max(x), length=nbins[1]+1) 43 | y.cuts <- seq( from=min(y), to=max(y), length=nbins[2]+1) 44 | } 45 | 46 | index.x <- cut( x, x.cuts, include.lowest=TRUE) 47 | index.y <- cut( y, y.cuts, include.lowest=TRUE) 48 | 49 | ## tapply is faster than old for() loop, and allows 50 | ## use of any user-specified summary function 51 | m <- tapply(x,list(index.x,index.y),FUN) 52 | 53 | ## If we're using length, set empty cells to 0 instead of NA 54 | if(identical(FUN,base::length)) 55 | m[is.na(m)] <- 0 56 | 57 | if(missing(xlab)) xlab <- deparse(substitute(xlab)) 58 | if(missing(ylab)) ylab <- deparse(substitute(ylab)) 59 | 60 | if(show) 61 | image( x.cuts, y.cuts, m, col=col, xlab=xlab, ylab=ylab, ...) 62 | 63 | midpoints <- function(x) (x[-1]+x[-length(x)])/2 64 | 65 | retval <- list() 66 | retval$counts <- m 67 | retval$x.breaks = x.cuts 68 | retval$y.breaks = y.cuts 69 | retval$x = midpoints(x.cuts) 70 | retval$y = midpoints(y.cuts) 71 | retval$nobs = length(x) 72 | retval$call <- match.call() 73 | class(retval) <- "hist2d" 74 | retval 75 | } 76 | -------------------------------------------------------------------------------- /R/layout_set.R: -------------------------------------------------------------------------------- 1 | layout_set <- function(mat, index) 2 | { 3 | mfg <- par("mfg") 4 | mfg[1:2] = which(mat==index, arr.ind=TRUE)[1,] 5 | par(mfg=mfg) 6 | invisible(mfg) 7 | } 8 | 9 | layout_show <- function(mat) 10 | { 11 | graphics::layout.show( max(mat) ) 12 | mat 13 | } 14 | -------------------------------------------------------------------------------- /R/lowess.R: -------------------------------------------------------------------------------- 1 | # make stats::lowess into a generic base-function 2 | lowess.default <- function (x, y = NULL, 3 | f = 2/3, 4 | iter = 3L, 5 | delta = 0.01 * diff(range(x)), 6 | ...) 7 | { 8 | m <- match.call() 9 | m[[1L]] <- quote(stats::lowess) 10 | retval <- eval(m, envir=parent.frame()) 11 | class(retval) <- "lowess" 12 | retval$call <- match.call() 13 | retval 14 | } 15 | 16 | lowess <- function(x,...) 17 | UseMethod("lowess") 18 | 19 | 20 | "lowess.formula" <- function (formula, 21 | data = parent.frame(), 22 | ..., 23 | subset, 24 | f=2/3, 25 | iter=3, 26 | delta=.01*diff(range(mf[-response])) 27 | ) 28 | { 29 | if (missing(formula) || (length(formula) != 3)) 30 | stop("formula missing or incorrect") 31 | 32 | m <- match.call(expand.dots = FALSE) 33 | eframe <- parent.frame() 34 | md <- eval(m$data, eframe) 35 | if (is.matrix(md)) 36 | m$data <- md <- as.data.frame(data) 37 | dots <- lapply(m$..., eval, md, eframe) 38 | nmdots <- names(dots) 39 | m$... <- m$f <- m$iter <- m$delta <- NULL 40 | subset.expr <- m$subset 41 | m$subset <- NULL 42 | m <- as.list(m) 43 | m[[1L]] <- stats::model.frame.default 44 | m <- as.call(c(m, list(na.action = NULL))) 45 | mf <- eval(m, eframe) 46 | if (!missing(subset)) { 47 | s <- eval(subset.expr, data, eframe) 48 | l <- nrow(mf) 49 | dosub <- function(x) if (length(x) == l) 50 | x[s] 51 | else x 52 | dots <- lapply(dots, dosub) 53 | mf <- mf[s, ] 54 | } 55 | 56 | mf <- na.omit(mf) 57 | 58 | response <- attr(attr(mf, "terms"), "response" ) 59 | retval <- stats::lowess(mf[[-response]], mf[[response]], f=f, iter=iter, delta=delta) 60 | class(retval) <- "lowess" 61 | retval$call <- match.call() 62 | 63 | retval 64 | } 65 | -------------------------------------------------------------------------------- /R/nobs.R: -------------------------------------------------------------------------------- 1 | # $Id: nobs.R 1799 2014-04-05 18:38:23Z warnes $ 2 | 3 | ## Redefine here, so that the locally defined methods (particularly 4 | ## nobs.default) take precidence over the ones now defined in the 5 | ## stats package 6 | nobs <- function(object, ...) 7 | UseMethod("nobs") 8 | 9 | nobs.default <- function(object, ...) 10 | { 11 | if(is.numeric(object) || is.logical(object)) 12 | sum( !is.na(object) ) 13 | else 14 | stats::nobs(object, ...) 15 | } 16 | 17 | 18 | nobs.data.frame <- function(object, ...) 19 | sapply(object, nobs.default) 20 | 21 | ## Now provided by 'stats' package, so provide alias to satisfy 22 | ## dependencies 23 | nobs.lm <- stats:::nobs.lm 24 | -------------------------------------------------------------------------------- /R/plot.lowess.R: -------------------------------------------------------------------------------- 1 | plotLowess <- function (formula, data=parent.frame(), ..., subset=parent.frame(), 2 | col.lowess="red", 3 | lty.lowess=2 ) 4 | { 5 | m <- match.call(expand.dots=TRUE) 6 | m[[1]] <- as.name("plot") 7 | eframe <- parent.frame() 8 | eval(m, eframe) 9 | m[[1]] <- as.name("lowess") 10 | lw <- eval(m, eframe) 11 | lines(lw, col=col.lowess, lty=lty.lowess) 12 | grid() 13 | 14 | invisible(lw) 15 | } 16 | 17 | plot.lowess <- function(x, y, ..., col.lowess="red", lty.lowess=2) 18 | { 19 | m <- x$call 20 | m[[1]] <- quote(plot) 21 | m <- as.call(append(as.list(m), list(...))) 22 | eval(m, envir = parent.frame()) 23 | 24 | lines(x$x, x$y, col=col.lowess, lty=lty.lowess) 25 | grid() 26 | 27 | invisible(x) 28 | } 29 | -------------------------------------------------------------------------------- /R/plotCI.R: -------------------------------------------------------------------------------- 1 | # $Id: plotCI.R 1948 2015-04-23 21:23:36Z warnes $ 2 | 3 | 4 | plotCI <- function (x, 5 | y = NULL, 6 | uiw, 7 | liw = uiw, 8 | ui, 9 | li, 10 | 11 | err='y', 12 | ylim=NULL, 13 | xlim=NULL, 14 | type="p", 15 | 16 | col=par("col"), 17 | barcol=col, 18 | pt.bg = par("bg"), 19 | 20 | sfrac = 0.01, 21 | gap=1, 22 | 23 | lwd=par("lwd"), 24 | lty=par("lty"), 25 | 26 | labels=FALSE, 27 | 28 | add=FALSE, 29 | xlab, 30 | ylab, 31 | 32 | minbar, 33 | maxbar, 34 | ... 35 | ) 36 | { 37 | 38 | if (is.list(x)) { 39 | y <- x$y 40 | x <- x$x 41 | } 42 | 43 | if(invalid(xlab)) 44 | xlab <- deparse(substitute(x)) 45 | 46 | if(invalid(ylab)) 47 | { 48 | if(is.null(y)) 49 | { 50 | xlab <- "" 51 | ylab <- deparse(substitute(x)) 52 | } 53 | else 54 | ylab <- deparse(substitute(y)) 55 | } 56 | 57 | if (is.null(y)) { 58 | if (is.null(x)) 59 | stop("both x and y NULL") 60 | y <- as.numeric(x) 61 | x <- seq(along = x) 62 | } 63 | 64 | 65 | if(err=="y") 66 | z <- y 67 | else 68 | z <- x 69 | 70 | if(invalid(uiw)) 71 | uiw <- NA 72 | if(invalid(liw)) 73 | liw <- NA 74 | 75 | 76 | if(invalid(ui)) 77 | ui <- z + uiw 78 | if(invalid(li)) 79 | li <- z - liw 80 | 81 | if(!invalid(minbar)) 82 | li <- ifelse( li < minbar, minbar, li) 83 | 84 | if(!invalid(maxbar)) 85 | ui <- ifelse( ui > maxbar, maxbar, ui) 86 | 87 | if(err=="y") 88 | { 89 | if(is.null(ylim)) 90 | ylim <- range(c(y, ui, li), na.rm=TRUE) 91 | } 92 | else if(err=="x") 93 | { 94 | if(is.null(xlim)) 95 | xlim <- range(c(x, ui, li), na.rm=TRUE) 96 | } 97 | 98 | if(!add) 99 | { 100 | if(invalid(labels) || any(labels==FALSE) ) 101 | plot(x, y, ylim = ylim, xlim=xlim, col=col, 102 | xlab=xlab, ylab=ylab, type="n", ...) 103 | else 104 | { 105 | plot(x, y, ylim = ylim, xlim=xlim, col=col, type="n", 106 | xlab=xlab, ylab=ylab, ...) 107 | text(x, y, label=labels, col=col, ... ) 108 | } 109 | } 110 | if(err=="y") 111 | { 112 | if(gap!=FALSE) 113 | gap <- strheight("O") * gap 114 | smidge <- par("fin")[1] * sfrac 115 | 116 | 117 | # draw upper bar 118 | if(!is.null(li)) 119 | arrows(x , li, x, pmax(y-gap,li), col=barcol, lwd=lwd, 120 | lty=lty, angle=90, length=smidge, code=1) 121 | # draw lower bar 122 | if(!is.null(ui)) 123 | arrows(x , ui, x, pmin(y+gap,ui), col=barcol, 124 | lwd=lwd, lty=lty, angle=90, length=smidge, code=1) 125 | } 126 | else 127 | { 128 | if(gap!=FALSE) 129 | gap <- strwidth("O") * gap 130 | smidge <- par("fin")[2] * sfrac 131 | 132 | # draw left bar 133 | if(!is.null(li)) 134 | arrows(li, y, pmax(x-gap,li), y, col=barcol, lwd=lwd, 135 | lty=lty, angle=90, length=smidge, code=1) 136 | if(!is.null(ui)) 137 | arrows(ui, y, pmin(x+gap,ui), y, col=barcol, lwd=lwd, 138 | lty=lty, angle=90, length=smidge, code=1) 139 | 140 | } 141 | 142 | ## _now_ draw the points (to avoid having lines drawn 'through' points) 143 | points(x, y, col = col, lwd = lwd, bg = pt.bg, type = type, ...) 144 | 145 | invisible(list(x = x, y = y)) 146 | } 147 | -------------------------------------------------------------------------------- /R/plotNode.R: -------------------------------------------------------------------------------- 1 | here <- function() {} 2 | 3 | plot.dendrogram <- stats:::plot.dendrogram 4 | environment(plot.dendrogram) <- environment(here) 5 | 6 | plotNodeLimit <- stats:::plotNodeLimit 7 | environment(plotNodeLimit) <- environment(here) 8 | 9 | # .memberDend <- stats:::.memberDend 10 | .memberDend <- function (x) 11 | { 12 | r <- attr(x, "x.member") 13 | if (is.null(r)) { 14 | r <- attr(x, "members") 15 | if (is.null(r)) 16 | r <- 1L 17 | } 18 | r 19 | } 20 | environment(.memberDend) <- environment(here) 21 | 22 | # .midDend <- stats:::.midDend 23 | .midDend <- function (x) { 24 | if (is.null(mp <- attr(x, "midpoint"))) 0 else mp 25 | } 26 | environment(.midDend) <- environment(here) 27 | 28 | unByteCode <- function(fun) 29 | { 30 | FUN <- eval(parse(text=deparse(fun))) 31 | environment(FUN) <- environment(fun) 32 | FUN 33 | } 34 | 35 | plotNode <- unByteCode(stats:::plotNode) 36 | environment(plotNode) <- environment(here) 37 | -------------------------------------------------------------------------------- /R/plotmeans.R: -------------------------------------------------------------------------------- 1 | ## $Id: plotmeans.R 1912 2015-01-02 20:10:21Z warnes $ 2 | 3 | plotmeans <- function (formula, data = NULL, subset, na.action, 4 | bars=TRUE, p=0.95, 5 | minsd=0, minbar=NULL, maxbar=NULL, 6 | xlab=names(mf)[2], ylab=names(mf)[1], 7 | mean.labels=FALSE, 8 | ci.label=FALSE, 9 | n.label=TRUE, 10 | text.n.label="n=", 11 | digits=getOption("digits"), col="black", 12 | barwidth=1, 13 | barcol="blue", 14 | connect=TRUE, 15 | ccol=col, 16 | legends=names(means), 17 | xaxt, 18 | use.t = TRUE, 19 | lwd=par("lwd"), 20 | ...) 21 | { 22 | if (invalid(formula) || (length(formula) != 3)) 23 | stop("formula missing or incorrect") 24 | if (invalid(na.action)) 25 | na.action <- options("na.action") 26 | 27 | mf <- match.call(expand.dots = FALSE) 28 | if (is.matrix(eval(mf$data, parent.frame()))) 29 | mf$data <- as.data.frame(data) 30 | 31 | m <- match(c("formula", "data", "subset", "na.action"), names(mf), 0L) 32 | 33 | mf <- mf[c(1L, m)] 34 | 35 | mf[[1L]] <- quote(stats::model.frame) 36 | mf <- eval(mf, parent.frame()) 37 | response <- attr(attr(mf, "terms"), "response") 38 | 39 | ## drop unused levels in factors!!! 40 | 41 | wFact <- which(attr(attr(mf, "terms"),"dataClasses") == "factor") 42 | for(i in wFact) 43 | mf[,i] <- factor(mf[,i]) 44 | 45 | means <- sapply(split(mf[[response]], mf[[-response]]), mean, na.rm=TRUE) 46 | ns <- sapply(sapply(split(mf[[response]], mf[[-response]]), na.omit, 47 | simplify=FALSE), length ) 48 | xlim <- c(0.5, length(means)+0.5) 49 | 50 | 51 | 52 | if(!bars) 53 | { 54 | plot( means, ..., col=col, xlim=xlim) 55 | } 56 | else 57 | { 58 | 59 | myvar <- function(x) var(x[!is.na(x)]) 60 | vars <- sapply(split(mf[[response]], mf[[-response]]), myvar) 61 | 62 | ## apply minimum variance specified by minsd^2 63 | vars <- ifelse( vars < (minsd^2), (minsd^2), vars) 64 | 65 | if(use.t) 66 | ci.width <- qt( (1+p)/2, ns-1 ) * sqrt(vars/ns) 67 | else 68 | ci.width <- qnorm( (1+p)/2 ) * sqrt(vars/ns) 69 | 70 | if(length(mean.labels)==1) 71 | { 72 | if (mean.labels==TRUE) 73 | mean.labels <- format( round(means, digits=digits )) 74 | else if (mean.labels==FALSE) 75 | mean.labels <- NULL 76 | } 77 | 78 | plotCI(x=1:length(means), y=means, uiw=ci.width, xaxt="n", 79 | xlab=xlab, ylab=ylab, labels=mean.labels, col=col, xlim=xlim, 80 | lwd=barwidth, barcol=barcol, minbar=minbar, maxbar=maxbar, ... ) 81 | if(invalid(xaxt) || xaxt!="n") 82 | axis(1, at = 1:length(means), labels = legends, ...) 83 | 84 | if(ci.label) 85 | { 86 | ci.lower <- means-ci.width 87 | ci.upper <- means+ci.width 88 | 89 | if(!invalid(minbar)) 90 | ci.lower <- ifelse(ci.lower < minbar, minbar, ci.lower) 91 | if(!invalid(maxbar)) 92 | ci.upper <- ifelse(ci.upper > maxbar, maxbar, ci.upper) 93 | 94 | labels.lower <- paste( " \n", format(round(ci.lower, digits=digits)), 95 | sep="") 96 | labels.upper <- paste( format(round(ci.upper, digits=digits)), "\n ", 97 | sep="") 98 | 99 | text(x=1:length(means),y=ci.lower, labels=labels.lower, col=col) 100 | text(x=1:length(means),y=ci.upper, labels=labels.upper, col=col) 101 | } 102 | 103 | } 104 | 105 | 106 | if(n.label) 107 | { 108 | text(x=1:length(means), 109 | y=par("usr")[3], 110 | labels=paste(text.n.label, ns, "\n", sep="") 111 | ) 112 | } 113 | 114 | if(!invalid(connect) & !identical(connect,FALSE)) 115 | { 116 | if(is.list(connect)) 117 | { 118 | if(length(ccol)==1) 119 | ccol <- rep(ccol, length(connect) ) 120 | 121 | for(which in 1:length(connect)) 122 | lines(x=connect[[which]],y=means[connect[[which]]],col=ccol[which]) 123 | } 124 | else 125 | lines(means, ..., lwd=lwd, col=ccol) 126 | } 127 | 128 | } 129 | 130 | -------------------------------------------------------------------------------- /R/print.ci2d.R: -------------------------------------------------------------------------------- 1 | ## $Id$ 2 | 3 | print.ci2d <- function(x, ...) 4 | { 5 | cat("\n") 6 | cat("----------------------------\n") 7 | cat("2-D Confidence Region Object\n") 8 | cat("----------------------------\n") 9 | cat("\n") 10 | cat("Call: ") 11 | print(x$call) 12 | cat("\n") 13 | cat("Number of data points: ", x$nobs, "\n") 14 | cat("Number of grid points: ", length(x$x), "x", length(x$y), "\n") 15 | cat("Number of confidence regions:", length(x$contours), "\n") 16 | cat("\n") 17 | 18 | tab <- data.frame( 19 | "Region"=1:length(x$contours), 20 | "CI Level"=as.numeric(names(x$contours)), 21 | "X Min"=sapply(x$contours, function(XX) min(XX$x)), 22 | "X Max"=sapply(x$contours, function(XX) max(XX$x)), 23 | "Y Min"=sapply(x$contours, function(XX) min(XX$y)), 24 | "Y Max"=sapply(x$contours, function(XX) max(XX$y)) 25 | ) 26 | 27 | print(tab, row.names=FALSE, ...) 28 | 29 | x$summary <- tab 30 | 31 | class(x) <- c("ci2d.summary", "ci2d") 32 | 33 | return(x) 34 | } 35 | -------------------------------------------------------------------------------- /R/print.hist2d.R: -------------------------------------------------------------------------------- 1 | # $Id: hist2d.R 1471 2011-08-16 01:03:31Z warnes $ 2 | 3 | print.hist2d <- function(x, ...) 4 | { 5 | cat("\n") 6 | cat("----------------------------\n") 7 | cat("2-D Histogram Object\n") 8 | cat("----------------------------\n") 9 | cat("\n") 10 | cat("Call: ") 11 | print(x$call) 12 | cat("\n") 13 | cat("Number of data points: ", x$nobs, "\n") 14 | cat("Number of grid bins: ", length(x$x), "x", length(x$y), "\n") 15 | cat("X range: (", min(x$x.breaks), ",", max(x$x.breaks), ")\n") 16 | cat("Y range: (", min(x$y.breaks), ",", max(x$y.breaks), ")\n") 17 | cat("\n") 18 | } 19 | -------------------------------------------------------------------------------- /R/qqnorm.aov.R: -------------------------------------------------------------------------------- 1 | # $Id: qqnorm.aov.R 625 2005-06-09 14:20:30Z nj7w $ 2 | 3 | qqnorm.aov <- function (y, full = FALSE, label = FALSE, omit = NULL, 4 | xlab = paste(if(full) "" else "Half", " Normal plot"), 5 | ylab = "Effects", ...) 6 | { 7 | r <- y$rank 8 | eff <- if (full) 9 | effects(y, set.sign = TRUE)[1:r] 10 | else abs(effects(y))[1:r] 11 | na <- names(eff) 12 | int <- match("(Intercept)", na) 13 | if (!is.null(omit)) { 14 | if (is.character(omit)) { 15 | int <- c(int, match(omit, na)) 16 | } 17 | else int <- c(int, omit) 18 | } 19 | int <- int[!is.na(int)] 20 | if (length(int)) 21 | eff <- eff[-int] 22 | n <- length(eff) 23 | if (n <= 0) 24 | stop("Not enough effects") 25 | ord <- order(eff) 26 | na <- names(eff) 27 | P <- if (full) 28 | ppoints(n) 29 | else ((1:n) + n)/(2 * n + 1) 30 | Q <- qnorm(P) 31 | plot(x = Q, y = eff[ord], xlab = xlab, ylab = ylab, ...) 32 | if (label && dev.interactive()) 33 | identify(Q, eff[ord], names(eff)[ord]) 34 | } 35 | 36 | 37 | -------------------------------------------------------------------------------- /R/reorder.R: -------------------------------------------------------------------------------- 1 | reorder.factor <- function(x, 2 | X, 3 | FUN, 4 | ..., 5 | order=is.ordered(x), 6 | new.order, 7 | sort=mixedsort) 8 | { 9 | constructor <- if (order) ordered else factor 10 | 11 | if(!missing(X) || !missing(FUN)) 12 | { 13 | if(missing(FUN)) FUN <- 'mean' 14 | 15 | ## I would prefer to call stats::reorder.default directly, 16 | ## but it exported from stats, so the relevant code is 17 | ## replicated here: 18 | ## --> 19 | scores <- tapply(X = X, INDEX = x, FUN = FUN, ...) 20 | levels <- names(base::sort(scores, na.last = TRUE)) 21 | if(order) 22 | ans <- ordered(x, levels=levels) 23 | else 24 | ans <- factor(x, levels=levels) 25 | attr(ans, "scores") <- scores 26 | ## <-- 27 | return(ans) 28 | } 29 | else if (!missing(new.order)) 30 | { 31 | if (is.numeric(new.order)) 32 | new.order <- levels(x)[new.order] 33 | else 34 | new.order <- new.order 35 | } 36 | else 37 | new.order <- sort(levels(x)) 38 | 39 | constructor(x, levels=new.order) 40 | } 41 | -------------------------------------------------------------------------------- /R/replaceTabs.R: -------------------------------------------------------------------------------- 1 | ## Function to replace all tabs in a string with an appropriate number of spaces. 2 | 3 | # handle a single character string 4 | replaceTabs.inner <- function( text, width=8 ) 5 | { 6 | spaces <- " " 7 | 8 | if(nchar(text)<1) return(text) 9 | 10 | text.split <- strsplit(text,"\t")[[1]] 11 | if(length(text.split)==1) 12 | return(text) 13 | else 14 | { 15 | nSpaceAdd <- 8 - nchar(text.split) %% 8 16 | nSpaceAdd[length(nSpaceAdd)] <- 0 17 | nSpaceAdd[nSpaceAdd==8] <- 0 18 | 19 | retval <- "" 20 | for(i in 1:length(text.split)) 21 | { 22 | tmp.text <- chartr("\t"," ", text.split[i]) # one space here 23 | retval <- paste(retval, tmp.text, substr(spaces,0,nSpaceAdd[i]-1 ), sep='' ) # rest here 24 | } 25 | return(retval) 26 | } 27 | } 28 | 29 | replaceTabs <- function(text, width=8) 30 | { 31 | text <- as.character(text) 32 | retval <- sapply(text, replaceTabs.inner) 33 | names(retval) <- names(text) 34 | retval 35 | } 36 | -------------------------------------------------------------------------------- /R/residplot.R: -------------------------------------------------------------------------------- 1 | # $Id: residplot.R 1012 2006-11-14 22:25:06Z ggorjan $ 2 | 3 | residplot <- function(model, formula, ...) 4 | { 5 | data <- expand.model.frame( model, formula, na.expand=TRUE) 6 | 7 | newform <- eval(parse( text=paste("as.call(", "resid(model) ~", 8 | formula[-1],")" ))) 9 | 10 | plot( newform, data=data, ylab="Residuals") 11 | lines(lowess( newform, data=data ), col="red") 12 | bandplot(newform,data=data) 13 | } 14 | 15 | -------------------------------------------------------------------------------- /R/rich.colors.R: -------------------------------------------------------------------------------- 1 | rich.colors <- function(n, 2 | palette="temperature", 3 | alpha=1, 4 | rgb=FALSE, 5 | plot=FALSE) 6 | { 7 | if(n <= 0) 8 | return(character(0)) 9 | 10 | palette <- match.arg(palette, c("temperature","blues")) 11 | x <- seq(0, 1, length=n) 12 | 13 | if(palette == "temperature") 14 | { 15 | r <- 1 / (1+exp(20-35*x)) 16 | g <- pmin(pmax(0,-0.8+6*x-5*x^2), 1) 17 | b <- dnorm(x,0.25,0.15) / max(dnorm(x,0.25,0.15)) 18 | } 19 | else 20 | { 21 | r <- 0.6*x + 0.4*x^2 22 | g <- 1.5*x - 0.5*x^2 23 | b <- 0.36 + 2.4*x - 2.0*x^2 24 | b[x>0.4] <- 1 25 | } 26 | 27 | rgb.m <- matrix(c(r,g,b), ncol=3, 28 | dimnames=list(NULL,c("red","green","blue"))) 29 | col <- mapply(rgb, r, g, b, alpha) 30 | 31 | if(rgb) 32 | attr(col, "rgb") <- cbind(rgb.m, alpha) 33 | 34 | if(plot) 35 | { 36 | opar <- par("fig", "plt") 37 | par(fig=c(0,1,0,0.7), plt=c(0.15,0.9,0.2,0.95)) 38 | plot(NA, xlim=c(-0.01,1.01), ylim=c(-0.01,1.01), xlab="Spectrum", ylab="", 39 | xaxs="i", yaxs="i", axes=FALSE) 40 | title(ylab="Value", mgp=c(3.5,0,0)) 41 | matlines(x, rgb.m, col=colnames(rgb.m), lty=1, lwd=3) 42 | matpoints(x, rgb.m, col=colnames(rgb.m), pch=16) 43 | axis(1, at=0:1) 44 | axis(2, at=0:1, las=1) 45 | par(fig=c(0,1,0.75,0.9), plt=c(0.08,0.97,0,1), new=TRUE) 46 | midpoints <- barplot(rep(1,n), col=col, border=FALSE, space=FALSE, 47 | axes=FALSE) 48 | axis(1, at=midpoints, labels=1:n, lty=0, cex.axis=0.6) 49 | par(opar) 50 | } 51 | 52 | return(col) 53 | } 54 | -------------------------------------------------------------------------------- /R/sinkplot.R: -------------------------------------------------------------------------------- 1 | # $Id: sinkplot.R 1673 2013-06-27 20:20:46Z warnes $ 2 | sinkplotEnv <-new.env() 3 | 4 | sinkplot <- function(operation=c("start","plot","cancel"),...) 5 | { 6 | operation <- match.arg(operation) 7 | 8 | if( operation=="start" ) 9 | { 10 | if (exists(".sinkplot.conn", envir=sinkplotEnv) && 11 | get(".sinkplot.conn", envir=sinkplotEnv) ) 12 | stop("sinkplot already in force") 13 | 14 | 15 | .sinkplot.conn <- textConnection(".sinkplot.data", "w", local=FALSE) 16 | assign(x=".sinkplot.conn", value=.sinkplot.conn, envir=sinkplotEnv) 17 | 18 | on.exit(sink()) 19 | sink(.sinkplot.conn) 20 | on.exit() 21 | } 22 | else 23 | { 24 | if (!exists(".sinkplot.conn", envir=sinkplotEnv) || 25 | !get(".sinkplot.conn", envir=sinkplotEnv) ) 26 | stop("No sinkplot currently in force") 27 | 28 | sink() 29 | 30 | data <- get(".sinkplot.data", envir=sinkplotEnv) 31 | 32 | if( operation=="plot" ) 33 | textplot( paste( data, collapse="\n"), ... ) 34 | 35 | close(get(".sinkplot.conn", envir=sinkplotEnv)) 36 | 37 | if(exists(".sinkplot.data", envir=sinkplotEnv, inherits=FALSE)) 38 | rm(list=".sinkplot.data", pos=sinkplotEnv, inherits=FALSE) 39 | 40 | if(exists(".sinkplot.conn", envir=sinkplotEnv, inherits=FALSE)) 41 | rm(list=".sinkplot.conn", pos=sinkplotEnv, inherits=FALSE) 42 | 43 | invisible(data) 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /R/smartlegend.R: -------------------------------------------------------------------------------- 1 | # $Id: smartlegend.R 2089 2016-03-24 13:47:48Z warnes $ 2 | 3 | smartlegend <- function(x=c("left","center","right"), 4 | y=c("top","center","bottom"), 5 | ..., inset=0.05 ) 6 | .Defunct('legend', 'gplots') 7 | 8 | 9 | -------------------------------------------------------------------------------- /R/space.R: -------------------------------------------------------------------------------- 1 | # $Id: space.R 625 2005-06-09 14:20:30Z nj7w $ 2 | 3 | # When there are two or more points with the same (x,y) value (or 4 | # within x+-s[1] and x+-s[2]), space these out in the y direction so 5 | # that the points are separated by at least distance s. 6 | 7 | 8 | space <- function(x,y,s=1/50, na.rm=TRUE, direction="x") 9 | { 10 | if(direction!='x') 11 | { 12 | tmp <- y 13 | y <- x 14 | x <- tmp 15 | } 16 | 17 | if(na.rm) 18 | { 19 | ind <- is.na(x) | is.na(y) 20 | x <- x[!ind] 21 | y <- y[!ind] 22 | } 23 | 24 | if (length(s)==1) s <- c(s,s) 25 | 26 | spacing.x <- (max(x) - min(x))*s[1] 27 | spacing.y <- (max(y) - min(y))*s[2] 28 | 29 | within <- function(x,y,delta) { abs(x-y) < delta } 30 | 31 | # sort x,y so we can do the work 32 | ord <- order(x,y) 33 | undo <- order(ord) 34 | 35 | x <- x[ord] 36 | y <- y[ord] 37 | 38 | startsame <- 1 39 | same.x <- x[1] 40 | same.y <- y[1] 41 | 42 | for( i in 1:length(x) ) 43 | { 44 | if(i>1 && 45 | within(x[i],same.x,spacing.x) && 46 | within(y[i],same.y,spacing.y) ) 47 | { 48 | if(x[startsame] == same.x ) 49 | x[startsame] <- x[startsame] 50 | 51 | cumrun <- i - startsame 52 | 53 | x[i] <- x[i] + (-1)^(cumrun+1) * floor((cumrun+1) /2) * spacing.x 54 | } else { 55 | startsame <- i 56 | same.x <- x[i] 57 | same.y <- y[i] 58 | } 59 | } 60 | 61 | if(direction!='x') 62 | { 63 | tmp <- y 64 | y <- x 65 | x <- tmp 66 | } 67 | 68 | return( list(x=x[undo], y=y[undo]) ) 69 | } 70 | 71 | -------------------------------------------------------------------------------- /R/vennMembers.R: -------------------------------------------------------------------------------- 1 | # Extract intersections 2 | vennMembers <- function(l, universe=NA, names, ...) 3 | { 4 | venn_object <- getVennCounts(l, universe, intersections=TRUE, ...) 5 | map <- attr(venn_object, "intersections") 6 | if(missing(names)) 7 | names <- colnames(venn_object)[-1] 8 | 9 | if(is.matrix(l) || is.data.frame(l)) 10 | { 11 | ids <- rownames(l) 12 | retval <- list() 13 | for(i in names(map)) 14 | retval[[i]] <- ids[map[[i]]] 15 | } 16 | else if(is.list(l)) 17 | retval <- map 18 | 19 | 20 | flags <- do.call(rbind, strsplit(names(map), character(0), fixed=TRUE)) 21 | rownames(flags) <- names(map) 22 | colnames(flags) <- names 23 | nameList <- list() 24 | for(i in 1:nrow(flags)) nameList[[i]] <- ifelse(flags[i,]=="1", colnames(flags), "") 25 | nameList <- do.call(data.frame,nameList) 26 | nameList <- apply(nameList, 2, paste, collapse=":") 27 | nameList <- gsub('::+', ':', nameList) 28 | nameList <- gsub('^:+', '', nameList) 29 | nameList <- gsub(':+$', '', nameList) 30 | 31 | names(retval) <- nameList 32 | 33 | sortTab <- cbind(sapply(nameList, nchar), nameList) 34 | ord <- order(sortTab[,1], sortTab[,2]) 35 | 36 | retval <- retval[ord] 37 | 38 | retval <- lapply(retval, as.character) 39 | 40 | retval 41 | } 42 | -------------------------------------------------------------------------------- /R/wapply.R: -------------------------------------------------------------------------------- 1 | # $Id: wapply.R 1012 2006-11-14 22:25:06Z ggorjan $ 2 | 3 | "wapply" <- function( x, y, fun=mean, method="range", 4 | width, n=50, drop.na=TRUE, pts, ...) 5 | { 6 | method <- match.arg(method, c("width","range","nobs","fraction")) 7 | if(missing(width)) 8 | if( method=="nobs" ) width <- max(5, length(x)/10 ) 9 | else 10 | width <- 1/10 11 | 12 | if(method == "width" || method == "range" ) 13 | { 14 | if(method=="range") 15 | width <- width * diff(range(x)) 16 | 17 | if(missing(pts)) 18 | pts <- seq(min(x),max(x),length.out=n) 19 | 20 | result <- sapply( pts, function(pts,y,width,fun,XX,...) 21 | { 22 | low <- min((pts-width/2),max(XX)) 23 | high <- max((pts+width/2), min(XX)) 24 | return (fun(y[(XX>= low) & (XX<=high)],...)) 25 | }, 26 | y=y, 27 | width=width, 28 | fun=fun, 29 | XX = x, 30 | ...) 31 | if(drop.na) 32 | { 33 | missing <- is.na(pts) & is.na(result) 34 | pts <- pts[!missing] 35 | result <- result[!missing] 36 | } 37 | 38 | return(list(x=pts,y=result)) 39 | } 40 | else # method=="nobs" || method=="fraction" 41 | { 42 | if( method=="fraction") 43 | width <- floor(length(x) * width) 44 | 45 | ord <- order(x) 46 | x <- x[ord] 47 | y <- y[ord] 48 | 49 | n <- length(x) 50 | center <- 1:n 51 | below <- sapply(center - width/2, function(XX) max(1,XX) ) 52 | above <- sapply(center + width/2, function(XX) min(n,XX) ) 53 | 54 | retval <- list() 55 | retval$x <- x 56 | retval$y <- apply(cbind(below,above), 1, 57 | function(x) fun(y[x[1]:x[2]],...) ) 58 | 59 | if(drop.na) 60 | { 61 | missing <- is.na(retval$x) | is.na(retval$y) 62 | retval$x <- retval$x[!missing] 63 | retval$y <- retval$y[!missing] 64 | } 65 | 66 | 67 | return(retval) 68 | } 69 | 70 | } 71 | 72 | 73 | -------------------------------------------------------------------------------- /R/zzz.R: -------------------------------------------------------------------------------- 1 | # Make sure to have: 2 | # sudo apt-get install texinfo 3 | # sudo apt-get install texlive 4 | 5 | # shell('git log --graph --stat --date=short --pretty=format:"%ad(%an) %s |%h" > ChangeLog', intern = TRUE) 6 | # system('git log --graph --stat --date=short --pretty=format:"%ad(%an) %s |%h" > ChangeLog', intern = TRUE) 7 | # file.copy("NEWS", "NEWS.md",overwrite = TRUE) 8 | # devtools::check_win_devel() 9 | # pkgdown::build_home() 10 | # pkgdown::build_site(run_dont_run = TRUE) 11 | # pkgdown::build_site() 12 | # release() -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![CRAN_Status_Badge](https://www.r-pkg.org/badges/version/gplots)](https://cran.r-project.org/package=gplots) 2 | [![CRAN Monthly](https://cranlogs.r-pkg.org/badges/gplots)](https://cranlogs.r-pkg.org/badges/gplots?color=yellow) 3 | [![CRAN Total](https://cranlogs.r-pkg.org/badges/grand-total/gplots)](https://cranlogs.r-pkg.org/badges/grand-total/gplots?color=yellowgreen) 4 | [![codecov.io](https://codecov.io/github/talgalili/gplots/coverage.svg?branch=master)](https://app.codecov.io/github/talgalili/gplots?branch=master) 5 | [![R-CMD-check](https://github.com/talgalili/gplots/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/talgalili/gplots/actions/workflows/R-CMD-check.yaml) 6 | 7 | **[gplots website](https://talgalili.github.io/gplots/) (built using [pkgdown](https://pkgdown.r-lib.org/))** 8 | 9 | # gplots 10 | 11 | 12 | ## Introduction 13 | 14 | This repo is to keep the gplots package alive. I don't plan to develop new features, but if you'll send pull requests I'm willing to review them. 15 | 16 | 17 | ### Latest news 18 | 19 | You can see the most recent changes to the package in the [NEWS.md file](https://talgalili.github.io/gplots/news/index.html) 20 | 21 | 22 | 23 | ### Code of conduct 24 | 25 | Please note that this project is released with a [Contributor Code of Conduct](https://github.com/talgalili/gplots/blob/master/CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms. 26 | 27 | 28 | 29 | ## Installation 30 | 31 | To install the stable version on CRAN: 32 | 33 | ```r 34 | install.packages('gplots') 35 | ``` 36 | 37 | 38 | And then you may load the package using: 39 | 40 | ```R 41 | library("gplots") 42 | ``` 43 | 44 | ## Usage 45 | 46 | TODO 47 | 48 | 49 | ## Contact 50 | 51 | You are welcome to: 52 | 53 | * Ask questions on: 54 | * Submit suggestions and bug-reports at: 55 | * Send a pull request on: 56 | * Compose a friendly e-mail to: 57 | 58 | -------------------------------------------------------------------------------- /TODO: -------------------------------------------------------------------------------- 1 | 2 | plot.lm2 3 | -------- 4 | 5 | - Upgrade to match current plot.lm code 6 | - For predictor vs resid, use boxplot when predictor is a factor 7 | - Rug plot or histogram for residuals/fitted values in both dimensions 8 | - Confidence region for normal distribution with equivalent number of points on QQ plot 9 | - display "bad" cutoff line for cook's distance plot 10 | 11 | -------------------------------------------------------------------------------- /data/rtPCR.rda: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/data/rtPCR.rda -------------------------------------------------------------------------------- /docs/articles/venn_files/figure-html/unnamed-chunk-1-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/articles/venn_files/figure-html/unnamed-chunk-1-1.png -------------------------------------------------------------------------------- /docs/articles/venn_files/figure-html/unnamed-chunk-2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/articles/venn_files/figure-html/unnamed-chunk-2-1.png -------------------------------------------------------------------------------- /docs/articles/venn_files/figure-html/unnamed-chunk-3-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/articles/venn_files/figure-html/unnamed-chunk-3-1.png -------------------------------------------------------------------------------- /docs/bootstrap-toc.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/) 3 | * Copyright 2015 Aidan Feldman 4 | * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ 5 | 6 | /* modified from https://github.com/twbs/bootstrap/blob/94b4076dd2efba9af71f0b18d4ee4b163aa9e0dd/docs/assets/css/src/docs.css#L548-L601 */ 7 | 8 | /* All levels of nav */ 9 | nav[data-toggle='toc'] .nav > li > a { 10 | display: block; 11 | padding: 4px 20px; 12 | font-size: 13px; 13 | font-weight: 500; 14 | color: #767676; 15 | } 16 | nav[data-toggle='toc'] .nav > li > a:hover, 17 | nav[data-toggle='toc'] .nav > li > a:focus { 18 | padding-left: 19px; 19 | color: #563d7c; 20 | text-decoration: none; 21 | background-color: transparent; 22 | border-left: 1px solid #563d7c; 23 | } 24 | nav[data-toggle='toc'] .nav > .active > a, 25 | nav[data-toggle='toc'] .nav > .active:hover > a, 26 | nav[data-toggle='toc'] .nav > .active:focus > a { 27 | padding-left: 18px; 28 | font-weight: bold; 29 | color: #563d7c; 30 | background-color: transparent; 31 | border-left: 2px solid #563d7c; 32 | } 33 | 34 | /* Nav: second level (shown on .active) */ 35 | nav[data-toggle='toc'] .nav .nav { 36 | display: none; /* Hide by default, but at >768px, show it */ 37 | padding-bottom: 10px; 38 | } 39 | nav[data-toggle='toc'] .nav .nav > li > a { 40 | padding-top: 1px; 41 | padding-bottom: 1px; 42 | padding-left: 30px; 43 | font-size: 12px; 44 | font-weight: normal; 45 | } 46 | nav[data-toggle='toc'] .nav .nav > li > a:hover, 47 | nav[data-toggle='toc'] .nav .nav > li > a:focus { 48 | padding-left: 29px; 49 | } 50 | nav[data-toggle='toc'] .nav .nav > .active > a, 51 | nav[data-toggle='toc'] .nav .nav > .active:hover > a, 52 | nav[data-toggle='toc'] .nav .nav > .active:focus > a { 53 | padding-left: 28px; 54 | font-weight: 500; 55 | } 56 | 57 | /* from https://github.com/twbs/bootstrap/blob/e38f066d8c203c3e032da0ff23cd2d6098ee2dd6/docs/assets/css/src/docs.css#L631-L634 */ 58 | nav[data-toggle='toc'] .nav > .active > ul { 59 | display: block; 60 | } 61 | -------------------------------------------------------------------------------- /docs/docsearch.js: -------------------------------------------------------------------------------- 1 | $(function() { 2 | 3 | // register a handler to move the focus to the search bar 4 | // upon pressing shift + "/" (i.e. "?") 5 | $(document).on('keydown', function(e) { 6 | if (e.shiftKey && e.keyCode == 191) { 7 | e.preventDefault(); 8 | $("#search-input").focus(); 9 | } 10 | }); 11 | 12 | $(document).ready(function() { 13 | // do keyword highlighting 14 | /* modified from https://jsfiddle.net/julmot/bL6bb5oo/ */ 15 | var mark = function() { 16 | 17 | var referrer = document.URL ; 18 | var paramKey = "q" ; 19 | 20 | if (referrer.indexOf("?") !== -1) { 21 | var qs = referrer.substr(referrer.indexOf('?') + 1); 22 | var qs_noanchor = qs.split('#')[0]; 23 | var qsa = qs_noanchor.split('&'); 24 | var keyword = ""; 25 | 26 | for (var i = 0; i < qsa.length; i++) { 27 | var currentParam = qsa[i].split('='); 28 | 29 | if (currentParam.length !== 2) { 30 | continue; 31 | } 32 | 33 | if (currentParam[0] == paramKey) { 34 | keyword = decodeURIComponent(currentParam[1].replace(/\+/g, "%20")); 35 | } 36 | } 37 | 38 | if (keyword !== "") { 39 | $(".contents").unmark({ 40 | done: function() { 41 | $(".contents").mark(keyword); 42 | } 43 | }); 44 | } 45 | } 46 | }; 47 | 48 | mark(); 49 | }); 50 | }); 51 | 52 | /* Search term highlighting ------------------------------*/ 53 | 54 | function matchedWords(hit) { 55 | var words = []; 56 | 57 | var hierarchy = hit._highlightResult.hierarchy; 58 | // loop to fetch from lvl0, lvl1, etc. 59 | for (var idx in hierarchy) { 60 | words = words.concat(hierarchy[idx].matchedWords); 61 | } 62 | 63 | var content = hit._highlightResult.content; 64 | if (content) { 65 | words = words.concat(content.matchedWords); 66 | } 67 | 68 | // return unique words 69 | var words_uniq = [...new Set(words)]; 70 | return words_uniq; 71 | } 72 | 73 | function updateHitURL(hit) { 74 | 75 | var words = matchedWords(hit); 76 | var url = ""; 77 | 78 | if (hit.anchor) { 79 | url = hit.url_without_anchor + '?q=' + escape(words.join(" ")) + '#' + hit.anchor; 80 | } else { 81 | url = hit.url + '?q=' + escape(words.join(" ")); 82 | } 83 | 84 | return url; 85 | } 86 | -------------------------------------------------------------------------------- /docs/link.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /docs/pkgdown.js: -------------------------------------------------------------------------------- 1 | /* http://gregfranko.com/blog/jquery-best-practices/ */ 2 | (function($) { 3 | $(function() { 4 | 5 | $('.navbar-fixed-top').headroom(); 6 | 7 | $('body').css('padding-top', $('.navbar').height() + 10); 8 | $(window).resize(function(){ 9 | $('body').css('padding-top', $('.navbar').height() + 10); 10 | }); 11 | 12 | $('[data-toggle="tooltip"]').tooltip(); 13 | 14 | var cur_path = paths(location.pathname); 15 | var links = $("#navbar ul li a"); 16 | var max_length = -1; 17 | var pos = -1; 18 | for (var i = 0; i < links.length; i++) { 19 | if (links[i].getAttribute("href") === "#") 20 | continue; 21 | // Ignore external links 22 | if (links[i].host !== location.host) 23 | continue; 24 | 25 | var nav_path = paths(links[i].pathname); 26 | 27 | var length = prefix_length(nav_path, cur_path); 28 | if (length > max_length) { 29 | max_length = length; 30 | pos = i; 31 | } 32 | } 33 | 34 | // Add class to parent
  • , and enclosing
  • if in dropdown 35 | if (pos >= 0) { 36 | var menu_anchor = $(links[pos]); 37 | menu_anchor.parent().addClass("active"); 38 | menu_anchor.closest("li.dropdown").addClass("active"); 39 | } 40 | }); 41 | 42 | function paths(pathname) { 43 | var pieces = pathname.split("/"); 44 | pieces.shift(); // always starts with / 45 | 46 | var end = pieces[pieces.length - 1]; 47 | if (end === "index.html" || end === "") 48 | pieces.pop(); 49 | return(pieces); 50 | } 51 | 52 | // Returns -1 if not found 53 | function prefix_length(needle, haystack) { 54 | if (needle.length > haystack.length) 55 | return(-1); 56 | 57 | // Special case for length-0 haystack, since for loop won't run 58 | if (haystack.length === 0) { 59 | return(needle.length === 0 ? 0 : -1); 60 | } 61 | 62 | for (var i = 0; i < haystack.length; i++) { 63 | if (needle[i] != haystack[i]) 64 | return(i); 65 | } 66 | 67 | return(haystack.length); 68 | } 69 | 70 | /* Clipboard --------------------------*/ 71 | 72 | function changeTooltipMessage(element, msg) { 73 | var tooltipOriginalTitle=element.getAttribute('data-original-title'); 74 | element.setAttribute('data-original-title', msg); 75 | $(element).tooltip('show'); 76 | element.setAttribute('data-original-title', tooltipOriginalTitle); 77 | } 78 | 79 | if(ClipboardJS.isSupported()) { 80 | $(document).ready(function() { 81 | var copyButton = ""; 82 | 83 | $("div.sourceCode").addClass("hasCopyButton"); 84 | 85 | // Insert copy buttons: 86 | $(copyButton).prependTo(".hasCopyButton"); 87 | 88 | // Initialize tooltips: 89 | $('.btn-copy-ex').tooltip({container: 'body'}); 90 | 91 | // Initialize clipboard: 92 | var clipboardBtnCopies = new ClipboardJS('[data-clipboard-copy]', { 93 | text: function(trigger) { 94 | return trigger.parentNode.textContent.replace(/\n#>[^\n]*/g, ""); 95 | } 96 | }); 97 | 98 | clipboardBtnCopies.on('success', function(e) { 99 | changeTooltipMessage(e.trigger, 'Copied!'); 100 | e.clearSelection(); 101 | }); 102 | 103 | clipboardBtnCopies.on('error', function() { 104 | changeTooltipMessage(e.trigger,'Press Ctrl+C or Command+C to copy'); 105 | }); 106 | }); 107 | } 108 | })(window.jQuery || window.$) 109 | -------------------------------------------------------------------------------- /docs/pkgdown.yml: -------------------------------------------------------------------------------- 1 | pandoc: 3.1.11 2 | pkgdown: 2.1.0 3 | pkgdown_sha: ~ 4 | articles: 5 | venn: venn.html 6 | last_built: 2024-10-05T06:20Z 7 | -------------------------------------------------------------------------------- /docs/reference/Rplot001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot001.png -------------------------------------------------------------------------------- /docs/reference/Rplot002.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot002.png -------------------------------------------------------------------------------- /docs/reference/Rplot003.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot003.png -------------------------------------------------------------------------------- /docs/reference/Rplot004.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot004.png -------------------------------------------------------------------------------- /docs/reference/Rplot005.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot005.png -------------------------------------------------------------------------------- /docs/reference/Rplot006.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot006.png -------------------------------------------------------------------------------- /docs/reference/Rplot007.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot007.png -------------------------------------------------------------------------------- /docs/reference/Rplot008.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot008.png -------------------------------------------------------------------------------- /docs/reference/Rplot009.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot009.png -------------------------------------------------------------------------------- /docs/reference/Rplot010.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot010.png -------------------------------------------------------------------------------- /docs/reference/Rplot011.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot011.png -------------------------------------------------------------------------------- /docs/reference/Rplot012.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot012.png -------------------------------------------------------------------------------- /docs/reference/Rplot013.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot013.png -------------------------------------------------------------------------------- /docs/reference/Rplot014.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot014.png -------------------------------------------------------------------------------- /docs/reference/Rplot015.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot015.png -------------------------------------------------------------------------------- /docs/reference/Rplot016.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot016.png -------------------------------------------------------------------------------- /docs/reference/Rplot017.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot017.png -------------------------------------------------------------------------------- /docs/reference/Rplot018.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot018.png -------------------------------------------------------------------------------- /docs/reference/Rplot019.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot019.png -------------------------------------------------------------------------------- /docs/reference/Rplot020.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot020.png -------------------------------------------------------------------------------- /docs/reference/Rplot021.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot021.png -------------------------------------------------------------------------------- /docs/reference/Rplot022.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot022.png -------------------------------------------------------------------------------- /docs/reference/Rplot023.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot023.png -------------------------------------------------------------------------------- /docs/reference/Rplot024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot024.png -------------------------------------------------------------------------------- /docs/reference/Rplot025.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot025.png -------------------------------------------------------------------------------- /docs/reference/Rplot026.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot026.png -------------------------------------------------------------------------------- /docs/reference/Rplot027.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot027.png -------------------------------------------------------------------------------- /docs/reference/Rplot028.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot028.png -------------------------------------------------------------------------------- /docs/reference/Rplot029.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot029.png -------------------------------------------------------------------------------- /docs/reference/Rplot030.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot030.png -------------------------------------------------------------------------------- /docs/reference/Rplot031.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot031.png -------------------------------------------------------------------------------- /docs/reference/Rplot032.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot032.png -------------------------------------------------------------------------------- /docs/reference/Rplot033.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot033.png -------------------------------------------------------------------------------- /docs/reference/Rplot034.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot034.png -------------------------------------------------------------------------------- /docs/reference/Rplot035.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot035.png -------------------------------------------------------------------------------- /docs/reference/Rplot036.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot036.png -------------------------------------------------------------------------------- /docs/reference/Rplot037.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot037.png -------------------------------------------------------------------------------- /docs/reference/Rplot038.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot038.png -------------------------------------------------------------------------------- /docs/reference/Rplot039.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot039.png -------------------------------------------------------------------------------- /docs/reference/Rplot040.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot040.png -------------------------------------------------------------------------------- /docs/reference/Rplot041.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot041.png -------------------------------------------------------------------------------- /docs/reference/Rplot042.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot042.png -------------------------------------------------------------------------------- /docs/reference/Rplot043.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot043.png -------------------------------------------------------------------------------- /docs/reference/Rplot044.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot044.png -------------------------------------------------------------------------------- /docs/reference/Rplot045.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplot045.png -------------------------------------------------------------------------------- /docs/reference/Rplots.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots1.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots10.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots10.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots11.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots11.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots12.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots12.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots13.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots13.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots14.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots14.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots15.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots15.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots16.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots16.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots17.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots17.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots18.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots18.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots19.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots19.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots2.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots20.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots20.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots21.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots21.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots22.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots22.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots23.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots23.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots24.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots24.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots25.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots25.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots26.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots26.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots27.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots27.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots28.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots28.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots29.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots29.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots3.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots30.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots30.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots31.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots31.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots32.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots32.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots33.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots33.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots34.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots34.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots35.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots35.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots36.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots36.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots37.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots37.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots38.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots38.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots39.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots39.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots4.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots40.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots40.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots41.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots41.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots42.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots42.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots43.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots43.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots44.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots44.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots45.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots45.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots46.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots46.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots47.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots47.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots48.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots48.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots49.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots49.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots5.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots50.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots50.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots51.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots51.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots52.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots52.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots53.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots53.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots54.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots54.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots55.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots55.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots56.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots56.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots57.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots57.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots58.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots58.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots59.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots59.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots6.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots60.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots60.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots61.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots61.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots62.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots62.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots63.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots63.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots64.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots64.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots65.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots65.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots66.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots66.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots67.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots67.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots68.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots68.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots69.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots69.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots7.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots8.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots8.pdf -------------------------------------------------------------------------------- /docs/reference/Rplots9.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/Rplots9.pdf -------------------------------------------------------------------------------- /docs/reference/adjust_hsv-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/adjust_hsv-1.png -------------------------------------------------------------------------------- /docs/reference/angleAxis-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/angleAxis-1.png -------------------------------------------------------------------------------- /docs/reference/angleAxis-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/angleAxis-2.png -------------------------------------------------------------------------------- /docs/reference/angleAxis-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/angleAxis-3.png -------------------------------------------------------------------------------- /docs/reference/angleAxis-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/angleAxis-4.png -------------------------------------------------------------------------------- /docs/reference/angleAxis-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/angleAxis-5.png -------------------------------------------------------------------------------- /docs/reference/angleAxis-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/angleAxis-6.png -------------------------------------------------------------------------------- /docs/reference/angleAxis-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/angleAxis-7.png -------------------------------------------------------------------------------- /docs/reference/balloonplot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/balloonplot-1.png -------------------------------------------------------------------------------- /docs/reference/balloonplot-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/balloonplot-2.png -------------------------------------------------------------------------------- /docs/reference/balloonplot-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/balloonplot-3.png -------------------------------------------------------------------------------- /docs/reference/balloonplot-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/balloonplot-4.png -------------------------------------------------------------------------------- /docs/reference/balloonplot-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/balloonplot-5.png -------------------------------------------------------------------------------- /docs/reference/bandplot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bandplot-1.png -------------------------------------------------------------------------------- /docs/reference/bandplot-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bandplot-2.png -------------------------------------------------------------------------------- /docs/reference/bandplot-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bandplot-3.png -------------------------------------------------------------------------------- /docs/reference/bandplot-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bandplot-4.png -------------------------------------------------------------------------------- /docs/reference/bandplot-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bandplot-5.png -------------------------------------------------------------------------------- /docs/reference/bandplot-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bandplot-6.png -------------------------------------------------------------------------------- /docs/reference/barplot2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/barplot2-1.png -------------------------------------------------------------------------------- /docs/reference/barplot2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/barplot2-2.png -------------------------------------------------------------------------------- /docs/reference/barplot2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/barplot2-3.png -------------------------------------------------------------------------------- /docs/reference/barplot2-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/barplot2-4.png -------------------------------------------------------------------------------- /docs/reference/barplot2-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/barplot2-5.png -------------------------------------------------------------------------------- /docs/reference/barplot2-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/barplot2-6.png -------------------------------------------------------------------------------- /docs/reference/barplot2-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/barplot2-7.png -------------------------------------------------------------------------------- /docs/reference/barplot2-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/barplot2-8.png -------------------------------------------------------------------------------- /docs/reference/boxplot2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/boxplot2-1.png -------------------------------------------------------------------------------- /docs/reference/boxplot2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/boxplot2-2.png -------------------------------------------------------------------------------- /docs/reference/boxplot2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/boxplot2-3.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-1.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-10.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-11.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-12.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-13.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-14.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-15.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-2.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-3.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-4.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-5.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-6.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-7.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-8.png -------------------------------------------------------------------------------- /docs/reference/bubbleplot-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/bubbleplot-9.png -------------------------------------------------------------------------------- /docs/reference/catch.d-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/catch.d-1.png -------------------------------------------------------------------------------- /docs/reference/catch.d-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/catch.d-2.png -------------------------------------------------------------------------------- /docs/reference/catch.d-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/catch.d-3.png -------------------------------------------------------------------------------- /docs/reference/catch.d-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/catch.d-4.png -------------------------------------------------------------------------------- /docs/reference/catch.d-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/catch.d-5.png -------------------------------------------------------------------------------- /docs/reference/catch.d-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/catch.d-6.png -------------------------------------------------------------------------------- /docs/reference/catch.d-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/catch.d-7.png -------------------------------------------------------------------------------- /docs/reference/ci2d-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-1.png -------------------------------------------------------------------------------- /docs/reference/ci2d-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-10.png -------------------------------------------------------------------------------- /docs/reference/ci2d-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-11.png -------------------------------------------------------------------------------- /docs/reference/ci2d-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-12.png -------------------------------------------------------------------------------- /docs/reference/ci2d-13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-13.png -------------------------------------------------------------------------------- /docs/reference/ci2d-14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-14.png -------------------------------------------------------------------------------- /docs/reference/ci2d-15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-15.png -------------------------------------------------------------------------------- /docs/reference/ci2d-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-16.png -------------------------------------------------------------------------------- /docs/reference/ci2d-17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-17.png -------------------------------------------------------------------------------- /docs/reference/ci2d-18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-18.png -------------------------------------------------------------------------------- /docs/reference/ci2d-19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-19.png -------------------------------------------------------------------------------- /docs/reference/ci2d-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-2.png -------------------------------------------------------------------------------- /docs/reference/ci2d-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-20.png -------------------------------------------------------------------------------- /docs/reference/ci2d-21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-21.png -------------------------------------------------------------------------------- /docs/reference/ci2d-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-3.png -------------------------------------------------------------------------------- /docs/reference/ci2d-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-4.png -------------------------------------------------------------------------------- /docs/reference/ci2d-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-5.png -------------------------------------------------------------------------------- /docs/reference/ci2d-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-6.png -------------------------------------------------------------------------------- /docs/reference/ci2d-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-7.png -------------------------------------------------------------------------------- /docs/reference/ci2d-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-8.png -------------------------------------------------------------------------------- /docs/reference/ci2d-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ci2d-9.png -------------------------------------------------------------------------------- /docs/reference/colorpanel-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/colorpanel-1.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-1.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-10.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-11.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-12.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-13.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-14.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-15.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-16.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-17.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-18.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-19.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-2.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-20.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-21.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-22.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-23.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-24.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-25.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-26.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-27.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-28.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-29.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-3.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-30.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-31.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-32.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-33.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-33.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-34.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-34.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-35.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-35.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-36.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-37.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-37.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-38.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-38.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-39.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-39.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-4.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-40.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-41.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-41.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-42.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-42.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-43.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-43.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-5.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-6.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-7.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-8.png -------------------------------------------------------------------------------- /docs/reference/heatmap.2-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/heatmap.2-9.png -------------------------------------------------------------------------------- /docs/reference/hist2d-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/hist2d-1.png -------------------------------------------------------------------------------- /docs/reference/hist2d-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/hist2d-2.png -------------------------------------------------------------------------------- /docs/reference/hist2d-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/hist2d-3.png -------------------------------------------------------------------------------- /docs/reference/hist2d-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/hist2d-4.png -------------------------------------------------------------------------------- /docs/reference/hist2d-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/hist2d-5.png -------------------------------------------------------------------------------- /docs/reference/hist2d-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/hist2d-6.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-1.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-10.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-2.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-3.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-4.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-5.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-6.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-7.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-8.png -------------------------------------------------------------------------------- /docs/reference/lmplot2-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lmplot2-9.png -------------------------------------------------------------------------------- /docs/reference/lowess-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-1.png -------------------------------------------------------------------------------- /docs/reference/lowess-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-10.png -------------------------------------------------------------------------------- /docs/reference/lowess-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-11.png -------------------------------------------------------------------------------- /docs/reference/lowess-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-2.png -------------------------------------------------------------------------------- /docs/reference/lowess-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-3.png -------------------------------------------------------------------------------- /docs/reference/lowess-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-4.png -------------------------------------------------------------------------------- /docs/reference/lowess-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-5.png -------------------------------------------------------------------------------- /docs/reference/lowess-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-6.png -------------------------------------------------------------------------------- /docs/reference/lowess-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-7.png -------------------------------------------------------------------------------- /docs/reference/lowess-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-8.png -------------------------------------------------------------------------------- /docs/reference/lowess-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/lowess-9.png -------------------------------------------------------------------------------- /docs/reference/ooplot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ooplot-1.png -------------------------------------------------------------------------------- /docs/reference/ooplot-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ooplot-2.png -------------------------------------------------------------------------------- /docs/reference/ooplot-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ooplot-3.png -------------------------------------------------------------------------------- /docs/reference/ooplot-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ooplot-4.png -------------------------------------------------------------------------------- /docs/reference/ooplot-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ooplot-5.png -------------------------------------------------------------------------------- /docs/reference/ooplot-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ooplot-6.png -------------------------------------------------------------------------------- /docs/reference/ooplot-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/ooplot-7.png -------------------------------------------------------------------------------- /docs/reference/overplot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/overplot-1.png -------------------------------------------------------------------------------- /docs/reference/overplot-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/overplot-2.png -------------------------------------------------------------------------------- /docs/reference/plotCI-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-1.png -------------------------------------------------------------------------------- /docs/reference/plotCI-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-10.png -------------------------------------------------------------------------------- /docs/reference/plotCI-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-11.png -------------------------------------------------------------------------------- /docs/reference/plotCI-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-2.png -------------------------------------------------------------------------------- /docs/reference/plotCI-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-3.png -------------------------------------------------------------------------------- /docs/reference/plotCI-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-4.png -------------------------------------------------------------------------------- /docs/reference/plotCI-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-5.png -------------------------------------------------------------------------------- /docs/reference/plotCI-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-6.png -------------------------------------------------------------------------------- /docs/reference/plotCI-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-7.png -------------------------------------------------------------------------------- /docs/reference/plotCI-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-8.png -------------------------------------------------------------------------------- /docs/reference/plotCI-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotCI-9.png -------------------------------------------------------------------------------- /docs/reference/plotmeans-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotmeans-1.png -------------------------------------------------------------------------------- /docs/reference/plotmeans-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotmeans-2.png -------------------------------------------------------------------------------- /docs/reference/plotmeans-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotmeans-3.png -------------------------------------------------------------------------------- /docs/reference/plotmeans-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/plotmeans-4.png -------------------------------------------------------------------------------- /docs/reference/qqnorm.aov-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/qqnorm.aov-1.png -------------------------------------------------------------------------------- /docs/reference/rich.colors-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/rich.colors-1.png -------------------------------------------------------------------------------- /docs/reference/rich.colors-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/rich.colors-2.png -------------------------------------------------------------------------------- /docs/reference/rich.colors-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/rich.colors-3.png -------------------------------------------------------------------------------- /docs/reference/rich.colors-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/rich.colors-4.png -------------------------------------------------------------------------------- /docs/reference/rich.colors-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/rich.colors-5.png -------------------------------------------------------------------------------- /docs/reference/rich.colors-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/rich.colors-6.png -------------------------------------------------------------------------------- /docs/reference/rtPCR-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/rtPCR-1.png -------------------------------------------------------------------------------- /docs/reference/rtPCR-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/rtPCR-2.png -------------------------------------------------------------------------------- /docs/reference/sinkplot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/sinkplot-1.png -------------------------------------------------------------------------------- /docs/reference/space-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/space-1.png -------------------------------------------------------------------------------- /docs/reference/space-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/space-2.png -------------------------------------------------------------------------------- /docs/reference/venn-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/venn-1.png -------------------------------------------------------------------------------- /docs/reference/venn-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/venn-2.png -------------------------------------------------------------------------------- /docs/reference/venn-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/venn-3.png -------------------------------------------------------------------------------- /docs/reference/venn-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/venn-4.png -------------------------------------------------------------------------------- /docs/reference/venn-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/venn-5.png -------------------------------------------------------------------------------- /docs/reference/venn-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/venn-6.png -------------------------------------------------------------------------------- /docs/reference/wapply-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/wapply-1.png -------------------------------------------------------------------------------- /docs/reference/wapply-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talgalili/gplots/126e79d4d8cd6360ca83a40857bb2ece31a8e4e7/docs/reference/wapply-2.png -------------------------------------------------------------------------------- /docs/sitemap.xml: -------------------------------------------------------------------------------- 1 | 2 | /404.html 3 | /CODE_OF_CONDUCT.html 4 | /articles/index.html 5 | /articles/venn.html 6 | /authors.html 7 | /index.html 8 | /news/index.html 9 | /reference/adjust_hsv.html 10 | /reference/angleAxis.html 11 | /reference/balloonplot.html 12 | /reference/bandplot.html 13 | /reference/barplot2.html 14 | /reference/boxplot2.html 15 | /reference/bubbleplot.html 16 | /reference/catch.d.html 17 | /reference/ci2d.html 18 | /reference/col2hex.html 19 | /reference/colorpanel.html 20 | /reference/gplots-defunct.html 21 | /reference/gplots-deprecated.html 22 | /reference/heatmap.2.html 23 | /reference/hist2d.html 24 | /reference/index.html 25 | /reference/lmplot2.html 26 | /reference/lowess.html 27 | /reference/nobs.html 28 | /reference/ooplot.html 29 | /reference/overplot.html 30 | /reference/plotCI.html 31 | /reference/plotmeans.html 32 | /reference/qqnorm.aov.html 33 | /reference/reorder.html 34 | /reference/residplot.html 35 | /reference/rich.colors.html 36 | /reference/rtPCR.html 37 | /reference/sinkplot.html 38 | /reference/space.html 39 | /reference/textplot.html 40 | /reference/venn.html 41 | /reference/wapply.html 42 | 43 | 44 | -------------------------------------------------------------------------------- /gplots.Rproj: -------------------------------------------------------------------------------- 1 | Version: 1.0 2 | 3 | RestoreWorkspace: Default 4 | SaveWorkspace: Default 5 | AlwaysSaveHistory: Default 6 | 7 | EnableCodeIndexing: Yes 8 | UseSpacesForTab: Yes 9 | NumSpacesForTab: 2 10 | Encoding: UTF-8 11 | 12 | RnwWeave: Sweave 13 | LaTeX: pdfLaTeX 14 | 15 | BuildType: Package 16 | PackageUseDevtools: Yes 17 | PackageInstallArgs: --no-multiarch --with-keep.source 18 | -------------------------------------------------------------------------------- /inst/TODO: -------------------------------------------------------------------------------- 1 | 2 | plot.lm2 3 | -------- 4 | 5 | - Upgrade to match current plot.lm code 6 | - For predictor vs resid, use boxplot when predictor is a factor 7 | - Rug plot or histogram for residuals/fitted values in both dimensions 8 | - Confidence region for normal distribution with equivalent number of points on QQ plot 9 | - display "bad" cutoff line for cook's distance plot 10 | 11 | -------------------------------------------------------------------------------- /inst/venn.Rnw: -------------------------------------------------------------------------------- 1 | \documentclass[a4paper]{article} 2 | 3 | %\VignetteIndexEntry{Venn Diagrams with gplots} 4 | 5 | \title{Venn Diagrams with \texttt{gplots}} 6 | \author{Steffen M{\"{o}}ller} 7 | 8 | \begin{document} 9 | \SweaveOpts{concordance=TRUE} 10 | 11 | \maketitle 12 | 13 | Venn diagrams\footnote{https://en.wikipedia.org/wiki/Venn\_diagram} 14 | allow for a quick overview on the number of elements that multiple 15 | sets share. And when those elements are representing traits of 16 | real objects, like observations in biomedical sciences/marketing/..., 17 | then this may direct researchers to further investigations/decisions. 18 | 19 | The {\tt gplots} package provides Venn diagrams for up to five sets. 20 | The R code to produce the diagrams is not complicated. The plot 21 | function behaves alwas the same, depending only on the number of 22 | overlapping circles to draw. Its input is a table that is produced 23 | by another function. The function {\tt venn()} calls one after the 24 | other and is the only one to be seen by the user. The values shown 25 | are returned invisibly. 26 | 27 | The {\tt venn()} function accepts either a list of sets as an argument, 28 | or it takes a binary matrix, one column per set, indicating for every 29 | element, one per row, the membership with every set. 30 | 31 | The common form with overlapping circles only works with up to three 32 | sets, as seen here: 33 | \begin{center} 34 | <>= 35 | suppressMessages(library(gplots)) 36 | venn( list(A=1:5,B=4:6,C=c(4,8:10)) ) 37 | @ 38 | \end{center} 39 | 40 | The names of columns or the list elements are the set names. 41 | To squeeze extra circles in, those circles need to become ellipses. 42 | This works for four sets 43 | \begin{center} 44 | <>= 45 | v.table<-venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12)) ) 46 | print(v.table) 47 | @ 48 | \end{center} 49 | 50 | and maybe even more impressively also for five. 51 | \begin{center} 52 | <>= 53 | venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12),E=c(2,4,6:9)) ) 54 | @ 55 | \end{center} 56 | 57 | The man page of {\it venn()} lists options to change the appearance of 58 | the plots, e.g., the names of the sets may be omitted and sizes changed. 59 | However, there is ample of opportunity to extend the functionality of 60 | this package. To mind come 61 | 62 | \begin{itemize} 63 | \item more dimensions (next) 64 | \item colors 65 | \item variation of size of circles with the number of members the set has 66 | \item density plot rather than numbers, identification of individual entries 67 | \end{itemize} 68 | 69 | The prime personal interest is more in the increase of dimensions. Please 70 | send patches for features you are most interested in. 71 | 72 | \end{document} 73 | 74 | -------------------------------------------------------------------------------- /man/adjust_hsv.Rd: -------------------------------------------------------------------------------- 1 | \name{adjust_hsv} 2 | \alias{adjust_hsv} 3 | \title{Adjust Color in HSV Space} 4 | \description{Adjust hue, saturation, value, and/or opacity.} 5 | \usage{ 6 | adjust_hsv(col, h=NULL, s=NULL, v=NULL, alpha=NULL) 7 | } 8 | \arguments{ 9 | \item{col}{a color or vector of colors.} 10 | \item{h}{the desired hue.} 11 | \item{s}{the desired saturation.} 12 | \item{v}{the desired value.} 13 | \item{alpha}{the desired opacity.} 14 | } 15 | \details{ 16 | Colors can be specified as a color name, a hexadecimal string, or an integer. 17 | 18 | Hue, saturation, value, and opacity are specified as values from 0 to 1, or 19 | \code{NULL} to leave unchanged. 20 | } 21 | \value{Adjusted colors in hexadecimal string format.} 22 | \author{Arni Magnusson.} 23 | \seealso{ 24 | \code{\link[grDevices]{adjustcolor}} adjusts colors in RGB space. 25 | 26 | \code{\link{col2rgb}}, \code{\link{rgb2hsv}}, and \code{\link{hsv}} are the 27 | underlying functions used to convert and adjust the colors. 28 | } 29 | \examples{ 30 | col <- "#123456" 31 | col2 <- adjust_hsv(col, h=0.1) 32 | col3 <- adjust_hsv(col, s=0.1) 33 | col4 <- adjust_hsv(col, v=0.7) 34 | 35 | barplot(rep(1, 4), col=c(col, col2, col3, col4), 36 | names=c("original", "h", "s", "v")) 37 | } 38 | -------------------------------------------------------------------------------- /man/angleAxis.Rd: -------------------------------------------------------------------------------- 1 | \name{angleAxis} 2 | \alias{angleAxis} 3 | \title{Add a Axis to a Plot with Rotated Labels} 4 | \description{ 5 | Add a labeled axis to the current plot with rotated text 6 | } 7 | \usage{ 8 | angleAxis(side, labels, at = 1:length(labels), srt = 45, adj, xpd = TRUE, ...) 9 | } 10 | \arguments{ 11 | \item{side}{ 12 | an integer specifying which side of the plot the axis is to be 13 | drawn on. The axis is placed as follows: 1=below, 2=left, 3=above and 14 | 4=right. 15 | } 16 | \item{labels}{character or expression vector of labels to be placed at the 17 | tickpoints. 18 | } 19 | \item{at}{the points at which tick-marks are to be drawn. Non-finite 20 | (infinite, NaN or NA) values are omitted. 21 | } 22 | \item{srt}{ 23 | The string rotation in degrees. Defaults to 45 degrees (clockwise). 24 | } 25 | \item{adj}{Text justification. 26 | A value of 0 produces left-justified text, 0.5 centered text and 1 27 | right-justified text. For \code{side=1} and \code{side=2}, the 28 | default value is \code{adj=1}. For \code{side=3} and \code{side=4} 29 | the default value is \code{adj=0}. 30 | } 31 | \item{xpd}{A logical value or NA. If FALSE, labels are clipped to the 32 | plot region, if TRUE, labels are clipped to the figure region, and 33 | if NA, labels are clipped to the device region. 34 | } 35 | \item{\dots}{optional arguments passed to \code{text}. Common examples are \code{col}, \code{cex}.} 36 | } 37 | \details{ 38 | This function augments the feature of the \code{axis} functon by allowing the axis labels to be rotated. 39 | } 40 | \author{Gregory R. Warnes \email{greg@warnes.net} } 41 | \seealso{ 42 | \code{\link{axis}} 43 | } 44 | \examples{ 45 | \dontshow{set.seed(42)} 46 | # create a vector with some values and long labels 47 | values <- sample(1:10) 48 | names(values) <- sapply(letters[1:10], 49 | function(x) paste(rep(x, 10), sep="",collapse="") 50 | ) 51 | 52 | # barplot labels are too long for the available space, hence some are not plotted 53 | barplot(values) 54 | 55 | # to add angled labels, tell barplot not to label the x axis, and store the bar location 56 | at <- barplot(values, xaxt="n") 57 | # then use angleAxs 58 | angleAxis(1, at=at, labels = names(values)) 59 | 60 | # angle counter-clockwise instead 61 | at <- barplot(values, xaxt="n") 62 | angleAxis(1, at=at, labels = names(values), srt=-45, adj=0) 63 | 64 | # put labels at the top 65 | oldpar <- par()$mar 66 | par(mar=c(1,4,5,2)+0.1) 67 | at <- barplot(values, xaxt="n") 68 | angleAxis(3, at=at, labels = names(values)) 69 | par(oldpar) 70 | 71 | # put labels on the left 72 | oldpar <- par()$mar 73 | par(mar=c(5,5,3,2)+0.1) 74 | at <- barplot(values, yaxt="n", horiz=TRUE) 75 | angleAxis(2, at=at, labels = names(values)) 76 | par(oldpar) 77 | 78 | # put labels on the right 79 | oldpar <- par()$mar 80 | par(mar=c(2,5,3,5)+0.1) 81 | at <- barplot(values, yaxt="n", horiz=TRUE) 82 | angleAxis(4, at=at, labels = names(values)) 83 | par(oldpar) 84 | 85 | # specify colors for bars and labels 86 | at <- barplot(values, xaxt="n", col=1:10) 87 | angleAxis(1, at=at, labels = names(values), col=1:10) 88 | } 89 | \keyword{aplot} 90 | 91 | -------------------------------------------------------------------------------- /man/bandplot.Rd: -------------------------------------------------------------------------------- 1 | \name{bandplot} 2 | \alias{bandplot} 3 | \alias{bandplot.formula} 4 | \alias{bandplot.default} 5 | \title{Plot x-y Points with Locally Smoothed Mean and Standard Deviation} 6 | \description{ 7 | Plot x-y points with curves for locally smoothed mean and standard deviation. 8 | } 9 | \usage{ 10 | bandplot(x,...) 11 | \method{bandplot}{formula}(x, data, subset, na.action, ..., 12 | xlab=NULL, ylab=NULL, add = FALSE, sd = c(-2:2), 13 | sd.col=c("magenta", "blue", "red", "blue", "magenta"), 14 | sd.lwd=c(2, 2, 3, 2, 2), sd.lty=c(2, 1, 1, 1, 2), 15 | method = "frac", width = 1/5, n=50) 16 | \method{bandplot}{default}(x, y, ..., add = FALSE, sd = c(-2:2), 17 | sd.col=c("magenta", "blue", "red", "blue", "magenta"), 18 | sd.lwd=c(2, 2, 3, 2, 2), sd.lty=c(2, 1, 1, 1, 2), 19 | method = "frac", width = 1/5, n=50) 20 | } 21 | \arguments{ 22 | \item{x}{either formula providing a single dependent variable (y) and 23 | an single independent variable (x) to use as coordinates in the 24 | scatter plot or a numeric vector of x locations} 25 | \item{y}{numeric vector of y locations} 26 | \item{data}{an optional data.frame, list, or environment contianing 27 | the variables used in the model (and in \code{subset}). If not found in 28 | data, the variables are taken from environment(formula), 29 | typically the environment from which lm is called.} 30 | \item{subset}{an optional vector specifying a subset of observations to be 31 | used in the fitting process.} 32 | \item{na.action}{a function which indicates what should happen when 33 | the data contain NAs. The default is set by the na.action 34 | setting of options, and is na.fail if that is unset. The 35 | factory-fresh default is na.omit. Another possible value is 36 | NULL, no action. Value na.exclude can be useful. } 37 | \item{\dots}{Additional plotting parameters} 38 | \item{xlab, ylab}{x and y axis labels} 39 | \item{add}{ Boolean indicating whether the local mean and standard 40 | deviation lines should be added to an existing plot. Defaults to 41 | FALSE.} 42 | \item{sd}{Vector of multiples of the standard devation that should be 43 | plotted. \code{0} gives the mean, \code{-1} gives the mean minus 44 | one standard deviation, etc. Defaults to -2:2.} 45 | \item{sd.col,sd.lwd,sd.lty}{Color, line width, and line type of each plotted line.} 46 | \item{method, width, n}{ Parameters controlling the smoothing. See the 47 | help page for \code{\link{wapply}} for details.} 48 | } 49 | \details{ 50 | \code{bandplot} was created to look for changes in the mean or 51 | variance of scatter plots, particularly plots of regression residuals. 52 | 53 | The local mean and standard deviation are calculated by calling 54 | 'wapply'. By default, bandplot asks wapply to smooth using intervals 55 | that include the nearest 1/5 of the data. See the documentation of 56 | that function for details on the algorithm. 57 | } 58 | \value{ 59 | Invisibly returns a list containing the x,y points plotted for each line. 60 | } 61 | \author{ Gregory R. Warnes \email{greg@warnes.net} 62 | } 63 | \seealso{ \code{\link{wapply}}, \code{\link{lowess}}} 64 | \examples{ 65 | 66 | # fixed mean, changing variance 67 | x <- 1:1000 68 | y <- rnorm(1000, mean=1, sd=1 + x/1000 ) 69 | bandplot(x,y) 70 | bandplot(y~x) 71 | 72 | # fixed varance, changing mean 73 | x <- 1:1000 74 | y <- rnorm(1000, mean=x/1000, sd=1) 75 | bandplot(x,y) 76 | 77 | # 78 | # changing mean and variance 79 | # 80 | x <- abs(rnorm(500)) 81 | y <- rnorm(500, mean=2*x, sd=2+2*x) 82 | 83 | # the changing mean and dispersion are hard to see whith the points alone: 84 | plot(x,y ) 85 | 86 | # regression picks up the mean trend, but not the change in variance 87 | reg <- lm(y~x) 88 | summary(reg) 89 | abline(reg=reg, col="blue", lwd=2) 90 | 91 | # using bandplot on the original data helps to show the mean and 92 | # variance trend 93 | bandplot(y ~ x) 94 | 95 | # using bandplot on the residuals helps to see that regression removes 96 | # the mean trend but leaves the trend in variability 97 | bandplot(predict(reg),resid(reg)) 98 | 99 | } 100 | \keyword{ dplot } 101 | -------------------------------------------------------------------------------- /man/boxplot2.Rd: -------------------------------------------------------------------------------- 1 | \name{boxplot2} 2 | \alias{boxplot2} 3 | \title{Produce a Boxplot Annotated with the Number of Observations} 4 | \description{ 5 | This funcntion uses \code{boxplot} to produce a boxplot which is then 6 | annotated with the number of observations in each group. 7 | } 8 | \usage{ 9 | boxplot2(..., top=FALSE, shrink=1, textcolor=NULL) 10 | } 11 | \arguments{ 12 | \item{\dots}{ parameters passed to \code{boxplot}. } 13 | \item{top}{ logical indicating whether the number of observations 14 | should be added to the top or the bottom of the plotting 15 | region. Defaults to \code{FALSE}. } 16 | \item{shrink}{ value to shrink character size (cex) when annotating.} 17 | \item{textcolor}{ text color. } 18 | } 19 | \author{ Gregory R. Warnes \email{greg@warnes.net}} 20 | \note{ 21 | This function replaces \code{boxplot.n}, which has been deprecated 22 | avoid potential problems with S3 method dispatching. 23 | } 24 | \seealso{ 25 | \code{\link{boxplot}}, 26 | \code{\link{text}} 27 | } 28 | 29 | \examples{ 30 | data(state) 31 | 32 | # n's at bottom 33 | boxplot2( state.area ~ state.region) 34 | 35 | # n's at top 36 | boxplot2( state.area ~ state.region, top=TRUE) 37 | 38 | # small red text 39 | boxplot2( state.area ~ state.region, shrink=0.8, textcolor="red") 40 | } 41 | 42 | \keyword{ hplot } 43 | -------------------------------------------------------------------------------- /man/catch.d.Rd: -------------------------------------------------------------------------------- 1 | \name{catch.d} 2 | \alias{catch.d} 3 | \alias{catch.r} 4 | \docType{data} 5 | \title{Catch at Age and Residuals} 6 | \description{ 7 | Catch-at-age observed data and model residuals from Icelandic saithe 8 | assessment. 9 | } 10 | \usage{ 11 | catch.d 12 | catch.r 13 | } 14 | \format{ 15 | Data frame containing three columns: 16 | \tabular{ll}{ 17 | \code{Year} \tab year\cr 18 | \code{Age} \tab age\cr 19 | and\cr 20 | \code{Catch} \tab catch (thousands of individuals)\cr 21 | or\cr 22 | \code{Resid} \tab standardized residual 23 | } 24 | } 25 | \details{ 26 | The data are from Tables 8.2 and 8.6 in the ICES (2015) fish stock 27 | assessment of Icelandic saithe. 28 | } 29 | \source{ 30 | ICES (2015) Report of the North-Western Working Group (NWWG). 31 | \emph{ICES CM 2015/ACOM:07}, pp. 240--246. 32 | } 33 | \seealso{ 34 | \code{\link{bubbleplot}} is an effective way to visualize these data. 35 | } 36 | \examples{ 37 | catch.t <- xtabs(Catch~Year+Age, catch.d) 38 | catch.m <- as.matrix(as.data.frame(unclass(catch.t))) 39 | 40 | # 1 Formula 41 | bubbleplot(Catch~Age+Year, data=catch.d) 42 | # Use rev=TRUE to get same layout as crosstab matrix: 43 | print(catch.m) 44 | bubbleplot(Catch~Age+Year, data=catch.d, rev=TRUE, las=1) 45 | 46 | # 2 Data frame 47 | bubbleplot(catch.d) 48 | 49 | # 3 Matrix or table 50 | bubbleplot(catch.m) 51 | bubbleplot(catch.t) 52 | 53 | # 4 Positive and negative values 54 | bubbleplot(catch.r) 55 | bubbleplot(Resid~Age+Year, catch.r, subset=Age \%in\% 4:9, 56 | rev=TRUE, xlim=c(3.5,9.5), cex=1.3) 57 | } 58 | -------------------------------------------------------------------------------- /man/col2hex.Rd: -------------------------------------------------------------------------------- 1 | \name{col2hex} 2 | \alias{col2hex} 3 | \title{Convert color names to hex RGB strings} 4 | \description{ 5 | Convert color names to hex RGB strings 6 | } 7 | \usage{ 8 | col2hex(cname) 9 | } 10 | \arguments{ 11 | \item{cname}{Color name(s)} 12 | } 13 | \value{ 14 | Character vector giving the hex color code translation of the provided 15 | color names. 16 | } 17 | \author{Gregory R. Warnes} 18 | \seealso{ 19 | \code{\link{col2rgb}}, \code{\link{colors}}, \code{\link{rgb}} 20 | } 21 | \examples{ 22 | col2hex(c("red","yellow","lightgrey")) 23 | } 24 | \keyword{color} 25 | -------------------------------------------------------------------------------- /man/colorpanel.Rd: -------------------------------------------------------------------------------- 1 | \name{colorpanel} 2 | \alias{colorpanel} 3 | \alias{redgreen} 4 | \alias{greenred} 5 | \alias{bluered} 6 | \alias{redblue} 7 | \title{Generate a smoothly varying set of colors} 8 | \description{ 9 | \code{colorpanel} generate a set of colors that varies 10 | smoothly. \code{redgreen}, \code{greenred}, \code{bluered}, and 11 | \code{redblue} generate red-black-green, green-black-red, 12 | red-white-blue, and blue-white-red colorbars, respectively. 13 | colors 14 | } 15 | \usage{ 16 | colorpanel(n, low, mid, high) 17 | redgreen(n) 18 | greenred(n) 19 | bluered(n) 20 | redblue(n) 21 | } 22 | %- maybe also 'usage' for other objects documented here. 23 | \arguments{ 24 | \item{n}{Desired number of color elements in the panel.} 25 | \item{low, mid, high}{Colors to use for the Lowest, middle, 26 | and highest values. \code{mid} may be ommited.} 27 | } 28 | \details{ 29 | The values for \code{low, mid, high} can be given as 30 | color names (\code{"red"}), plot color index (\code{2}), and 31 | HTML-style RGB, (\code{"#FF0000"}). 32 | 33 | If \code{mid} is supplied, then the returned color panel will consist 34 | of \code{n - floor(n/2)} HTML-style RGB elements which vary smoothly 35 | between \code{low} and \code{mid}, then between \code{mid} and 36 | \code{high}. Note that if \code{n} is even, the color \code{mid} will 37 | occur twice at the center of the sequence. 38 | 39 | If \code{mid} is omitted, the color panel will vary 40 | smoothly beween \code{low} and \code{high}. 41 | } 42 | \value{ 43 | Vector of HTML-style RGB colors. 44 | } 45 | \author{ Gregory R. Warnes \email{greg@warnes.net} } 46 | \seealso{ \code{\link{colors} } } 47 | \examples{ 48 | 49 | showpanel <- function(col) 50 | { 51 | image(z=matrix(1:100, ncol=1), col=col, xaxt="n", yaxt="n" ) 52 | } 53 | 54 | par(mfrow=c(3,3)) 55 | 56 | # two colors only: 57 | showpanel(colorpanel(8,low="red",high="green")) 58 | 59 | # three colors 60 | showpanel(colorpanel(8,"red","black","green")) 61 | # note the duplicatation of black at the center, using an odd 62 | # number of elements resolves this: 63 | showpanel(colorpanel(9,"red","black","green")) 64 | 65 | showpanel(greenred(64)) 66 | showpanel(redgreen(64)) 67 | showpanel(bluered(64)) 68 | showpanel(redblue(64)) 69 | 70 | } 71 | \keyword{color} 72 | -------------------------------------------------------------------------------- /man/gplots-defunct.Rd: -------------------------------------------------------------------------------- 1 | \name{gplots-defunct} 2 | \alias{boxplot.n} 3 | \alias{plot.lm2} 4 | \alias{smartlegend} 5 | \title{Defunct functions} 6 | \description{ 7 | These functions are defunct and have been removed from the gplots package. 8 | } 9 | \usage{ 10 | boxplot.n(..., top=FALSE, shrink=1, textcolor=NULL) 11 | plot.lm2( 12 | x, 13 | which = 1:5, 14 | caption = c("Residuals vs Fitted", "Normal Q-Q plot", 15 | "Scale-Location plot", "Cook's distance plot"), 16 | panel = panel.smooth, 17 | sub.caption = deparse(x$call), 18 | main = "", 19 | ask, 20 | ..., 21 | id.n = 3, 22 | labels.id = names(residuals(x)), 23 | cex.id = 0.75, 24 | band=TRUE, 25 | rug=TRUE, 26 | width=1/10, 27 | max.n=5000 28 | ) 29 | smartlegend(x = c("left", "center", "right"), 30 | y = c("top", "center", "bottom"), 31 | ..., 32 | inset = 0.05) 33 | } 34 | \arguments{ 35 | \item{ask, 36 | band, 37 | caption, 38 | cex.id, 39 | id.n, 40 | inset, 41 | labels.id, 42 | main, 43 | max.n, 44 | panel, 45 | rug, 46 | shrink, 47 | sub.caption, 48 | textcolor, 49 | top, 50 | which, 51 | width, 52 | x, 53 | y, 54 | \dots}{see man page for the corresponding replacement function} 55 | } 56 | \details{ 57 | These functions are no longer available. Please refer to the manual page 58 | for the replacement function: 59 | \itemize{ 60 | \item \code{boxplot.n} has been replaced by \code{\link{boxplot2}} 61 | \item \code{plot.lm2} has been replaced by \code{\link{lmplot2}} 62 | \item \code{smartlegend} is no longer needed because relative 63 | positioning has been implemented in \code{\link[graphics]{legend}}. 64 | } 65 | } 66 | \author{Gregory R. Warnes \email{greg@warnes.net}} 67 | \seealso{ 68 | \code{\link{boxplot2}}, 69 | \code{\link{lmplot2}}, 70 | \code{\link[graphics]{legend}}, 71 | \code{\link[base]{Defunct}} 72 | } 73 | \keyword{misc} 74 | -------------------------------------------------------------------------------- /man/gplots-deprecated.Rd: -------------------------------------------------------------------------------- 1 | \name{gplots-deprecated} 2 | \alias{deprecated} 3 | \title{Deprecated functions} 4 | \description{ 5 | These functions have been deprecated and will be removed in future 6 | releases of gplots. 7 | } 8 | \usage{ 9 | ## No deprecated functions at this time ## 10 | } 11 | %\arguments{ 12 | %} 13 | \details{ 14 | These functions have been deprecated. Please refer to the manual page 15 | for the replacement function: 16 | \itemize{ 17 | \item (No deprecated functions at this time) 18 | } 19 | } 20 | \author{Gregory R. Warnes \email{greg@warnes.net}} 21 | \seealso{ 22 | \code{\link[base]{Deprecated}} 23 | } 24 | \keyword{misc} 25 | -------------------------------------------------------------------------------- /man/hist2d.Rd: -------------------------------------------------------------------------------- 1 | % $Id: hist2d.Rd 1812 2014-04-17 19:05:11Z warnes $ 2 | \name{hist2d} 3 | \alias{hist2d} 4 | \alias{print.hist2d} 5 | \title{ Compute and Plot a 2-Dimensional Histogram } 6 | \description{ 7 | Compute and plot a 2-dimensional histogram. 8 | } 9 | \usage{ 10 | hist2d(x,y=NULL, nbins=200, same.scale=FALSE, na.rm=TRUE, show=TRUE, 11 | col=c("black", heat.colors(12)), FUN=base::length, xlab, ylab, 12 | ... ) 13 | \method{print}{hist2d}(x, ...) 14 | } 15 | \arguments{ 16 | \item{x}{either a vector containing the x coordinates 17 | or a matrix with 2 columns. } 18 | \item{y}{a vector contianing the y coordinates, not required if `x' 19 | is matrix} 20 | \item{nbins}{number of bins in each dimension. May be a scalar or a 21 | 2 element vector. Defaults to 200.} 22 | \item{same.scale}{use the same range for x and y. Defaults to FALSE.} 23 | \item{na.rm}{ Indicates whether missing values should be 24 | removed. Defaults to TRUE.} 25 | \item{show}{ Indicates whether the histogram be displayed using 26 | \code{image} once it has 27 | been computed. Defaults to TRUE.} 28 | \item{col}{ Colors for the histogram. Defaults to "black" for 29 | bins containing no elements, a set of 16 heat colors for other bins.} 30 | \item{FUN}{Function used to summarize bin contents. Defaults to 31 | \code{base::length}. Use, e.g., \code{mean} to calculate means for each bin 32 | instead of counts.} 33 | \item{xlab,ylab}{(Optional) x and y axis labels} 34 | \item{\dots}{ Parameters passed to the image function. } 35 | } 36 | \details{ 37 | This fucntion creates a 2-dimensional histogram by cutting the x and 38 | y dimensions into \code{nbins} sections. A 2-dimensional matrix is 39 | then constucted which holds the counts of the number of observed (x,y) pairs 40 | that fall into each bin. If \code{show=TRUE}, this matrix is then 41 | then passed to \code{image} for display. 42 | } 43 | \value{ 44 | A list containing 5 elements: 45 | \item{counts}{Matrix containing the number of points falling into each 46 | bin} 47 | \item{x.breaks, y.breaks}{Lower and upper limits of each bin} 48 | \item{x,y}{midpoints of each bin} 49 | } 50 | \author{ Gregory R. Warnes \email{greg@warnes.net}} 51 | 52 | \seealso{ 53 | \code{\link{image}}, \code{\link{persp}}, \code{\link{hist}}, 54 | \code{\link[r2d2]{freq2d}} 55 | } 56 | 57 | \examples{ 58 | ## example data, bivariate normal, no correlation 59 | x <- rnorm(2000, sd=4) 60 | y <- rnorm(2000, sd=1) 61 | 62 | ## separate scales for each axis, this looks circular 63 | hist2d(x,y) 64 | 65 | ## same scale for each axis, this looks oval 66 | hist2d(x,y, same.scale=TRUE) 67 | 68 | ## use different ## bins in each dimension 69 | hist2d(x,y, same.scale=TRUE, nbins=c(100,200) ) 70 | 71 | ## use the hist2d function to create an h2d object 72 | h2d <- hist2d(x,y,show=FALSE, same.scale=TRUE, nbins=c(20,30)) 73 | 74 | ## show object summary 75 | h2d 76 | 77 | ## object contents 78 | str(h2d) 79 | 80 | ## perspective plot 81 | persp( h2d$x, h2d$y, h2d$counts, 82 | ticktype="detailed", theta=30, phi=30, 83 | expand=0.5, shade=0.5, col="cyan", ltheta=-30) 84 | 85 | ## for contour (line) plot ... 86 | contour( h2d$x, h2d$y, h2d$counts, nlevels=4 ) 87 | 88 | ## for a filled contour plot ... 89 | filled.contour( h2d$x, h2d$y, h2d$counts, nlevels=4, 90 | col=gray((4:0)/4) ) 91 | 92 | 93 | 94 | } 95 | \keyword{dplot} 96 | \keyword{hplot} 97 | -------------------------------------------------------------------------------- /man/lmplot2.Rd: -------------------------------------------------------------------------------- 1 | \name{lmplot2} 2 | \alias{lmplot2} 3 | \title{ 4 | Plots to assess the goodness of fit for the linear model objects 5 | } 6 | \description{ 7 | Plots to assess the goodness of fit for the linear model objects 8 | } 9 | \usage{ 10 | lmplot2( 11 | x, 12 | which = 1:5, 13 | caption = c("Residuals vs Fitted", "Normal Q-Q plot", 14 | "Scale-Location plot", "Cook's distance plot"), 15 | panel = panel.smooth, 16 | sub.caption = deparse(x$call), 17 | main = "", 18 | ask = interactive() && nb.fig < length(which) 19 | && .Device != "postscript", 20 | ..., 21 | id.n = 3, 22 | labels.id = names(residuals(x)), 23 | cex.id = 0.75, 24 | band=TRUE, 25 | rug=TRUE, 26 | width=1/10, 27 | max.n=5000 28 | ) 29 | } 30 | \arguments{ 31 | \item{x}{lm object} 32 | \item{which}{Numerical values between 1 and 5, indicating which plots 33 | to be shown. The codes are: 34 | \describe{ 35 | \item{1}{Fitted vs residuals} 36 | \item{2}{Normal Q-Q} 37 | \item{3}{Scale-Location} 38 | \item{4}{Cook's distance} 39 | \item{5}{Residuals vs. predictor} 40 | } 41 | } 42 | \item{caption}{ Caption for each type of plot} 43 | \item{panel}{ function to draw on the existing plot} 44 | \item{sub.caption}{ SubCaption for the plots } 45 | \item{main}{Main title of the plot} 46 | \item{ask}{whether interactive graphics} 47 | \item{\dots}{ parameters passed to \code{lmplot2}. } 48 | \item{id.n}{ integer value, less than or equal to residuals of lm object } 49 | \item{labels.id}{Names of the residuals of the lm object} 50 | \item{cex.id}{Parameter to control the height of text stringsx} 51 | \item{band}{logical vector indicating whether bandplot should also be plotted } 52 | \item{rug}{logical vector indicating whether rug should be added to 53 | the existing plot } 54 | \item{width}{Fraction of the data to use for plot smooths} 55 | \item{max.n}{Maximum number of points to display in plots} 56 | } 57 | \note{ 58 | This function replaces \code{plot.lm2}, which has been deprecated 59 | to avoid potential problems with S3 method dispatching. 60 | } 61 | \author{Gregory R. Warnes \email{greg@warnes.net} and Nitin 62 | Jain \email{nitin.jain@pfizer.com}} 63 | \seealso{ 64 | \code{\link[stats]{plot.lm}} 65 | } 66 | \examples{ 67 | ctl <- rnorm(100, 4) 68 | trt <- rnorm(100, 4.5) 69 | group <- gl(2,100,200, labels=c("Ctl","Trt")) 70 | weight <- c(ctl, trt) 71 | wt.err <- rnorm(length(weight), mean=weight, sd=1/2) 72 | x <- lm(weight ~ group + wt.err) 73 | 74 | lmplot2(x) 75 | 76 | lmplot2(x, which=1, width=1/3) 77 | lmplot2(x, which=1:3, width=1/3) 78 | } 79 | \keyword{hplot} 80 | -------------------------------------------------------------------------------- /man/overplot.Rd: -------------------------------------------------------------------------------- 1 | \name{overplot} 2 | \alias{overplot} 3 | \alias{panel.overplot} 4 | \title{Plot multiple variables on the same region, with appropriate axes} 5 | \description{ 6 | \code{overplot} graphs a set of variables defined on the same x-range 7 | but which have varying y-ranges on the same plotting area. For each 8 | set of y-values it uses a different color and line-type and and draws 9 | a correspondingly colored and line-typed axis. \code{panel.overplot} 10 | is used by \code{overplot} to draw the individual graphs. 11 | } 12 | \usage{ 13 | overplot(formula, data = parent.frame(), same.scale = FALSE, xlab, ylab, 14 | xlim, ylim, min.y, max.y, log = "", panel = "panel.overplot", 15 | subset, plot = TRUE, groups, main, f = 2/3, ...) 16 | } 17 | \arguments{ 18 | \item{formula}{Formula describing the x and y variables. It should be 19 | of the form x ~ y|z. The conditioning variable (z) should be a factor.} 20 | \item{same.scale}{ Logical value indicating whether the plot region 21 | should have the same range for all plots. Defaults to \code{FALSE}.} 22 | \item{xlab, ylab, xlim, ylim, main}{ Standard plotting parameters. See 23 | \code{\link{plot}} for details} 24 | \item{min.y, max.y}{Scalar or vector values used to specify the y 25 | plotting limits for individual plots. If a single scalar value is 26 | provided, it will be used for all plots. These parameters can be 27 | used specify one end of the individual plot ranges, while allowing 28 | the other end to vary with the data. EG, to force 0 to always be 29 | within the plot region.} 30 | \item{log}{ character string '', 'x', 'y', or 'xy', indicating which axes 31 | should be plotted on a log scale. Defaults to '' (neither).} 32 | \item{panel}{ a plotting function to be called to draw the individual 33 | plots. Defaults to \code{overplot.panel}, which plots the points 34 | and a \code{lowess} smooth. } 35 | \item{plot}{Logical value indicating whether to draw the plot.} 36 | \item{groups}{(optional) character vector giving the names of levels 37 | of the conditioning variable to plot. Defaults to all levels of the 38 | conditioning variable.} 39 | \item{f}{Smoothing parameter for \code{lowess}} 40 | \item{data, subset, \dots}{parameters passed to \code{model.frame} to 41 | obtain the data to be plotted from the formula.} 42 | } 43 | \details{ 44 | This function essentially performs 45 | 46 | tmp <- split(data, z) 47 | 48 | for(i in levels(z)) 49 | 50 | plot( x ~ y, data=tmp[[z]] ) 51 | 52 | except that all of the plots are shown on the same plotting region and 53 | varying scales for each value of z are handled nicely. 54 | } 55 | \value{ 56 | A copy of the data split by the conditioning variable. 57 | } 58 | \author{ Gregory R. Warnes \email{greg@warnes.net} } 59 | \seealso{ 60 | \code{\link{interaction.plot}}, 61 | \code{\link{coplot}} for alternative visualizations of 3-way data.} 62 | \examples{ 63 | 64 | # Example teratogenicity rtPCR data 65 | data(rtPCR) 66 | 67 | # same scale 68 | overplot( RQ ~ Conc..ug.ml. | Test.Substance, 69 | data=rtPCR, 70 | subset=Detector=="ProbeType 1" & Conc..ug.ml. > 0, 71 | same.scale=TRUE, 72 | log="xy", 73 | f=3/4, 74 | main="Detector=ProbeType 1", 75 | xlab="Concentration (ug/ml)", 76 | ylab="Relative Gene Quantification" 77 | ) 78 | 79 | # different scales, but force lower limit to 0.01 80 | overplot( RQ ~ Conc..ug.ml. | Test.Substance, 81 | data=rtPCR, 82 | subset=Detector=="ProbeType 8" & Conc..ug.ml. > 0, 83 | log="xy", 84 | f=3/4, 85 | main="Detector=ProbeType 8", 86 | xlab="Concentration (ug/ml)", 87 | ylab="Relative Gene Quantification", 88 | min.y=0.01 89 | ) 90 | 91 | } 92 | \keyword{hplot} 93 | -------------------------------------------------------------------------------- /man/qqnorm.aov.Rd: -------------------------------------------------------------------------------- 1 | \name{qqnorm.aov} 2 | \alias{qqnorm.aov} 3 | 4 | \title{ Makes a half or full normal plot for the effects from an aov model } 5 | \description{ 6 | Makes a half or full normal plot for the effects from a model 7 | inheriting from 8 | class \code{aov}. One can interactively label the points in the plot. 9 | } 10 | \usage{ 11 | \method{qqnorm}{aov}(y, full=FALSE, label=FALSE, omit=NULL, 12 | xlab=paste(if (full) "" else "Half", " Normal plot"), 13 | ylab="Effects", ...) 14 | } 15 | 16 | \arguments{ 17 | \item{y}{A model object inheriting from \code{aov}} 18 | \item{full}{Full or half normal plot (half is default) } 19 | \item{label}{If \code{TRUE}, function allows interactive 20 | labelling of points in plot, using the mouse } 21 | \item{omit}{Numeric or character vector of effects to omit, 22 | the intercept is always omitted} 23 | \item{xlab}{Horizontal axix label } 24 | \item{ylab}{Vertical axis label } 25 | \item{\dots}{Further arguments to be given to the plot function } 26 | } 27 | \details{ 28 | Produces a (half) normal plot of the effects from an AOV model. The 29 | idea behind the plot is that most effects will be small or null, and 30 | this effects can be used as a basis for estimation of the 31 | experimental variance. This small effects will show up in the plot as 32 | a straight line, other effects can be judged against this as a 33 | background. Heavily used by Box, Hunter & Hunter, which attributes 34 | the idea to Daniel. 35 | } 36 | \value{ 37 | If \code{label=TRUE}, the vector of points identified, else nothing of 38 | interest. 39 | } 40 | 41 | \references{ 42 | Box, Hunter and Hunter: Statistics for Experimenters. An Introduction 43 | to Design, Data Analysis and Model Building. Wiley. \cr 44 | Daniel, C (1976): Applications of Statistics to Industrial 45 | Experimentation. Wiley. \cr 46 | Daniel, C (1959): Use of half-normal plot in interpreting factorial 47 | two-level experiments. \emph{Technometrics.}\bold{1}, 149. 48 | } 49 | 50 | \author{Kjetil Halvorsen \email{kjetil@entelnet.bo}} 51 | 52 | \examples{ 53 | library(MASS) 54 | data(npk) 55 | npk.aov <- aov(yield ~ block + N*P*K, npk) 56 | qqnorm(npk.aov) 57 | 58 | ## interactive labeling of points. Click mouse on points to show label. 59 | if (dev.interactive()) qqnorm(npk.aov, omit=2:6, label=TRUE) 60 | } 61 | \keyword{ hplot }% 62 | \keyword{ design } 63 | 64 | -------------------------------------------------------------------------------- /man/reorder.Rd: -------------------------------------------------------------------------------- 1 | \name{reorder.factor} 2 | \alias{reorder.factor} 3 | \title{Reorder the Levels of a Factor} 4 | \description{ 5 | Reorder the levels of a factor 6 | } 7 | \usage{ 8 | \method{reorder}{factor}(x, X, FUN, ..., order=is.ordered(x), new.order, sort=mixedsort) 9 | } 10 | \arguments{ 11 | \item{x}{factor} 12 | \item{X}{auxillary data vector} 13 | \item{FUN}{function to be applied to subsets of \code{X} determined by 14 | \code{x}, to determine factor order} 15 | \item{...}{optional parameters to \code{FUN}} 16 | \item{order}{logical value indicating whether the returned 17 | object should be an \code{\link{ordered}} factor} 18 | \item{new.order}{a vector of indexes or a vector of label names giving 19 | the order of the new factor levels} 20 | \item{sort}{function to use to sort the factor level names, used only 21 | when \code{new.order} is missing} 22 | } 23 | \details{ 24 | This function changes the order of the levels of a factor. It can do 25 | so via three different mechanisms, depending on whether, \code{X} 26 | \emph{and} \code{FUN}, \code{new.order} or \code{sort} are provided. 27 | 28 | If \code{X} \emph{and} \code{Fun} are provided: The data in \code{X} 29 | is grouped by the levels of \code{x} and \code{FUN} is applied. 30 | The groups are then sorted by this value, and the resulting order is 31 | used for the new factor level names. 32 | 33 | If \code{new.order} is a numeric vector, the new factor level names 34 | are constructed by reordering the factor levels according to the 35 | numeric values. If \code{new.order} is a chraccter vector, 36 | \code{new.order} gives the list of new factor level names. In either 37 | case levels omitted from \code{new.order} will become missing 38 | (\code{NA}) values. 39 | 40 | If \code{sort} is provided (as it is by default): The new factor level 41 | names are generated by calling the function specified by \code{sort} 42 | to the existing factor level \emph{names}. With \code{sort=mixedsort} 43 | (the default) the factor levels are sorted so that combined numeric 44 | and character strings are sorted in according to character rules on 45 | the character sections (including ignoring case), and the numeric 46 | rules for the numeric sections. See \code{\link[gtools]{mixedsort}} 47 | for details. 48 | } 49 | \value{ A new factor with reordered levels } 50 | 51 | \author{Gregory R. Warnes \email{greg@warnes.net}} 52 | 53 | \seealso{ 54 | \code{\link{factor}} 55 | and 56 | \code{\link[stats]{reorder}} 57 | } 58 | 59 | \examples{ 60 | 61 | \dontshow{ 62 | set.seed(123456) 63 | } 64 | 65 | # Create a 4 level example factor 66 | trt <- factor( sample( c("PLACEBO", "300 MG", "600 MG", "1200 MG"), 67 | 100, replace=TRUE ) ) 68 | summary(trt) 69 | # Note that the levels are not in a meaningful order. 70 | 71 | # Change the order to something useful.. 72 | # - default "mixedsort" ordering 73 | trt2 <- reorder(trt) 74 | summary(trt2) 75 | # - using indexes: 76 | trt3 <- reorder(trt, new.order=c(4, 2, 3, 1)) 77 | summary(trt3) 78 | # - using label names: 79 | trt4 <- reorder(trt, new.order=c("PLACEBO", "300 MG", "600 MG", "1200 MG")) 80 | summary(trt4) 81 | # - using frequency 82 | trt5 <- reorder(trt, X=rnorm(100), FUN=mean) 83 | summary(trt5) 84 | 85 | # Drop out the '300 MG' level 86 | trt6 <- reorder(trt, new.order=c("PLACEBO", "600 MG", "1200 MG")) 87 | summary(trt6) 88 | } 89 | \keyword{ manip } 90 | -------------------------------------------------------------------------------- /man/residplot.Rd: -------------------------------------------------------------------------------- 1 | % $Id: residplot.Rd 1441 2010-06-11 03:11:54Z warnes $ 2 | 3 | \name{residplot} 4 | \alias{residplot} 5 | %\alias{iapply} 6 | \title{Undocumented functions} 7 | \description{ 8 | These functions are undocumented. Some are internal and not intended 9 | for direct use. Others simply haven't been documented yet. 10 | } 11 | \usage{ 12 | residplot(model, formula, ...) 13 | } 14 | \arguments{ 15 | \item{model}{Undocumented} 16 | \item{formula}{Undocumented} 17 | \item{\dots}{ arguments to be passed to \code{fun} } 18 | } 19 | \details{ 20 | These functions are undocumented. Some are internal and not intended 21 | for direct use. Others simply haven't been documented yet. 22 | } 23 | \author{Gregory R. Warnes \email{greg@warnes.net}} 24 | \keyword{misc} 25 | -------------------------------------------------------------------------------- /man/rich.colors.Rd: -------------------------------------------------------------------------------- 1 | \name{rich.colors} 2 | \alias{rich.colors} 3 | \title{Rich Color Palettes} 4 | \description{ 5 | Create a vector of \code{n} colors that are perceptually equidistant 6 | and in an order that is easy to interpret. 7 | } 8 | \usage{ 9 | rich.colors(n, palette="temperature", alpha=1.0, rgb=FALSE, plot=FALSE) 10 | } 11 | \arguments{ 12 | \item{n}{number of colors to generate.} 13 | \item{palette}{palette to use: \code{"temperature"} contains 14 | blue-green-yellow-red, and \code{"blues"} contains 15 | black-blue-white.} 16 | \item{alpha}{alpha transparency, from 0 (fully transparent) to 1 17 | (opaque).} 18 | \item{rgb}{if \code{TRUE} then a matrix of RGBA values is included as an 19 | attribute.} 20 | \item{plot}{whether to plot a descriptive color diagram.} 21 | } 22 | \value{A character vector of color codes.} 23 | \author{Arni Magnusson.} 24 | \seealso{ 25 | \code{\link{rgb}}, \code{\link{rainbow}}, \code{\link{heat.colors}}. 26 | } 27 | \examples{ 28 | m <- abs(matrix(1:120+rnorm(120), nrow=15, ncol=8)) 29 | opar <- par(bg="gray", mfrow=c(1,2)) 30 | matplot(m, type="l", lty=1, lwd=3, col=rich.colors(8)) 31 | matplot(m, type="l", lty=1, lwd=3, col=rich.colors(8,"blues")) 32 | par(opar) 33 | 34 | barplot(rep(1,100), col=rich.colors(100), space=0, border=0, axes=FALSE) 35 | barplot(rep(1,20), col=rich.colors(40)[11:30]) # choose subset 36 | 37 | plot(m, rev(m), ylim=c(120,0), pch=16, cex=2, 38 | col=rich.colors(200,"blues",alpha=0.6)[1:120]) # semitransparent 39 | 40 | rich.colors(100, plot=TRUE) # describe rgb recipe 41 | 42 | par(mfrow=c(2,2)) 43 | barplot(m, col=heat.colors(15), main="\nheat.colors") 44 | barplot(m, col=1:15, main="\ndefault palette") 45 | barplot(m, col=rich.colors(15), main="\nrich.colors") 46 | barplot(m, col=rainbow(15), main="\nrainbow") 47 | par(opar) 48 | } 49 | % Graphics 50 | \keyword{color} 51 | -------------------------------------------------------------------------------- /man/rtPCR.Rd: -------------------------------------------------------------------------------- 1 | \name{rtPCR} 2 | \alias{rtPCR} 3 | \docType{data} 4 | \title{Teratogenesis rtPCR data} 5 | \description{ 6 | rtPCR data for experiments investigating a variety of markers for 7 | characterizing teratogenicity. 8 | } 9 | \usage{data(rtPCR)} 10 | \format{ 11 | A data frame with 1672 observations on the following 21 variables. 12 | \describe{ 13 | \item{PlateID}{a factor with levels \code{A0027002} through 14 | \code{A0054019}} 15 | \item{Test.Substance}{a factor with levels \code{Compound A} through 16 | \code{Compound H}} 17 | \item{Teratogenicity.in.vivo}{a factor with levels \code{Non} 18 | \code{Strong} \code{Weak / Moderate}} 19 | \item{Sample}{a factor with levels \code{Sample 1} - \code{Sample 152}} 20 | \item{Rep..}{a factor with levels \code{Rep 1} - \code{Rep 21}} 21 | \item{Label}{a factor with levels \code{Ctrl}, \code{Neg. Ctrl} 22 | \code{P1} - \code{P9}, \code{No Vehicle Ctrl}, and \code{Pos. Ctrl}} 23 | \item{Conc..ug.ml.}{a numeric vector} 24 | \item{Detector}{a factor with levels \code{ProbeType 1} - 25 | \code{ProbeType 17}} 26 | \item{Avg.delta.Ct}{a numeric vector} 27 | \item{delta.Ct.SD}{a numeric vector} 28 | \item{delta.delta.Ct}{a numeric vector} 29 | \item{RQ}{a numeric vector} 30 | \item{X..RQ}{a numeric vector} 31 | \item{X100..Custom..}{a numeric vector} 32 | \item{X100...Custom..}{a numeric vector} 33 | \item{Custom..}{a numeric vector} 34 | \item{Custom...1}{a numeric vector} 35 | \item{RQ.Min}{a numeric vector} 36 | \item{RQ.Max}{a numeric vector} 37 | \item{Threshold}{a numeric vector} 38 | } 39 | } 40 | \details{ 41 | TBA 42 | } 43 | \source{ 44 | Anonymized data. 45 | } 46 | \examples{ 47 | data(rtPCR) 48 | 49 | # same scale 50 | overplot( RQ ~ Conc..ug.ml. | Test.Substance, 51 | data=rtPCR, 52 | subset=Detector=="ProbeType 7" & Conc..ug.ml. > 0, 53 | same.scale=TRUE, 54 | log="xy", 55 | f=3/4, 56 | main="Detector=ProbeType 7", 57 | xlab="Concentration (ug/ml)", 58 | ylab="Relative Gene Quantification" 59 | ) 60 | 61 | # different scales, but force lower limit to 0.01 62 | overplot( RQ ~ Conc..ug.ml. | Test.Substance, 63 | data=rtPCR, 64 | subset=Detector=="ProbeType 7" & Conc..ug.ml. > 0, 65 | log="xy", 66 | f=3/4, 67 | main="Detector=ProbeType 7", 68 | xlab="Concentration (ug/ml)", 69 | ylab="Relative Gene Quantification", 70 | min.y=0.01 71 | ) 72 | } 73 | \keyword{datasets} 74 | -------------------------------------------------------------------------------- /man/sinkplot.Rd: -------------------------------------------------------------------------------- 1 | \name{sinkplot} 2 | \alias{sinkplot} 3 | \title{Send textual R output to a graphics device} 4 | \description{ 5 | Divert R's standard text output to a graphics device. 6 | } 7 | \usage{ 8 | sinkplot(operation = c("start", "plot", "cancel"), ...) 9 | } 10 | \arguments{ 11 | \item{operation}{See below} 12 | \item{\dots}{Plot arguments. (Ignored unless \code{operation}="plot").} 13 | } 14 | \details{ 15 | This function allows the printed output of R commands to be captured 16 | and displayed on a graphics device. 17 | 18 | The capture process is started by calling 19 | \code{sinkplot("start")}. Now R commands can be executed and all 20 | printed output (except errors) will be captured. When the desired 21 | text has been captured \code{sinkplot("plot")} can be called to 22 | actually display the output. \code{sinkplot("cancel")} can be used to 23 | abort the output capture without plotting. 24 | 25 | The current implementation does not allow \code{sinkplot} to be nested. 26 | } 27 | \value{ 28 | Invisibly returns a character vector containing one element for each 29 | line of the captured output. 30 | } 31 | 32 | \references{Functionality requested by Kevin Wright 33 | \email{kwright@eskimo.com} in the R-devel newlist posting 34 | \url{https://stat.ethz.ch/pipermail/r-devel/2004-January/028483.html}. 35 | } 36 | \author{ Gregory R. Warnes \email{greg@warnes.net} } 37 | \seealso{ \code{\link[utils]{capture.output}}, \code{\link{textplot}} } 38 | \examples{ 39 | set.seed(12456) 40 | x <- factor(sample( LETTERS[1:5], 50, replace=TRUE)) 41 | y <- rnorm(50, mean=as.numeric(x), sd=1) 42 | 43 | ## construct a figure showing a box plot of the data, followed by an 44 | ## analysis of variance table for the data 45 | layout(cbind(1:2), heights=c(2,1)) 46 | 47 | boxplot(y~x, col="darkgreen") 48 | 49 | sinkplot() 50 | anova(lm(y~x)) 51 | sinkplot("plot",col="darkgreen") 52 | } 53 | \keyword{hplot} 54 | -------------------------------------------------------------------------------- /man/space.Rd: -------------------------------------------------------------------------------- 1 | % $Id: space.Rd 1441 2010-06-11 03:11:54Z warnes $ 2 | % 3 | % $Log$ 4 | % Revision 1.9 2005/09/12 15:44:37 nj7w 5 | % Updated Greg's email 6 | % 7 | % Revision 1.8 2005/06/09 14:20:28 nj7w 8 | % Updating the version number, and various help files to synchronize splitting of gregmisc bundle in 4 individual components. 9 | % 10 | % Revision 1.1.1.1 2005/05/25 22:15:31 nj7w 11 | % Initial submission as an individual package 12 | % 13 | % Revision 1.7 2004/04/13 13:42:31 warnes 14 | % Add ability to space points along 'y' direction. 15 | % 16 | % Revision 1.6 2003/01/03 19:23:34 warnes 17 | % - Added reference to and comparison example of sunflowerplot. 18 | % - Added code to put example plots on same plot window using par(mfrow=...). 19 | % 20 | % Revision 1.5 2002/09/23 13:59:30 warnes 21 | % - Modified all files to include CVS Id and Log tags. 22 | % 23 | % 24 | 25 | \name{space} 26 | \alias{space} 27 | \title{Space points in an x-y plot so they don't overlap.} 28 | \description{ 29 | Space points in an x-y plot so they don't overlap. 30 | } 31 | \usage{ 32 | space(x, y, s=1/50, na.rm=TRUE, direction="x") 33 | } 34 | \arguments{ 35 | \item{x}{numeric vector of x coordonates.} 36 | \item{y}{numeric vector of x coordonates.} 37 | \item{s}{either a single numeric value or 2 element vector specifying 38 | the minimum distance between points in the x and y dimensions as a 39 | fraction of the x and y range. Defaults to 1/50.} 40 | \item{na.rm}{logical indicating whether pairs where one or both 41 | elements are missing should be removed. Defaults to TRUE.} 42 | \item{direction}{"x" or "y", indicating which direction points should 43 | be moved to accomplish spacine.} 44 | } 45 | \details{ 46 | In an x-y plot where at least one variable has discrete levels several 47 | points may be plotted at or very near the same coordonates. 48 | This makes it difficult to guage the number of points in a specific 49 | region. A common method of resolving this problem is to 'jitter' the 50 | points by adding random noise. 51 | 52 | This function takes a different approach to the same problem. 53 | 54 | When there are two or more points with the same (x,y) value (or 55 | within x+-s[1] and x+-s[2]), it spaces these out in the x direction 56 | so that the points are separated by at least distance s. 57 | 58 | Another method for dealing with overploting is available in the 59 | \code{\link{sunflowerplot}} function. 60 | } 61 | \value{ 62 | list with two components 63 | \item{x}{(modified) x location for each input point} 64 | \item{y}{y location of each input point} 65 | } 66 | \author{ Gregory R. Warnes \email{greg@warnes.net} } 67 | \seealso{ \code{\link{jitter}}, \code{\link{sunflowerplot}} } 68 | 69 | \examples{ 70 | x <- rep(1:5, 10) 71 | y <- round(rnorm(length(x),x)) 72 | 73 | prepar <- par("mfrow") 74 | par(mfrow=c(1,3)) 75 | 76 | # standard x-y plot: noverlapping points are hidden 77 | plot(x,y) 78 | title("Standard Plot") 79 | 80 | # 'spaced' plot: overlapping points are spread out and visible 81 | plot(space(x,y)) 82 | title("Plot with 'space'") 83 | 84 | 85 | # 'spaced' plot: overlapping points are spread out along y and visible 86 | plot(space(x,y, direction='y')) 87 | title("Plot with 'space', direction='y' ") 88 | 89 | 90 | # 'sunflower' plot, another approach, overlapping points are 91 | # indicated via petals 92 | sunflowerplot(x,y) 93 | title("Sunflower Plot") 94 | 95 | \testonly{ 96 | # check that missign values correctly handled 97 | x <- c(x,NA) 98 | y <- c(y,NA) 99 | plot(space(x,y)) 100 | } 101 | 102 | par(mfrow=prepar) 103 | } 104 | \keyword{ dplot } 105 | 106 | -------------------------------------------------------------------------------- /tests/adjust_hsv.R: -------------------------------------------------------------------------------- 1 | suppressMessages(library(gplots)) 2 | 3 | col <- "#123456" 4 | col2 <- adjust_hsv(col, h=0.1) # h 5 | col3 <- adjust_hsv(col, s=0.1) # s 6 | col4 <- adjust_hsv(col, v=0.7) # v 7 | col5 <- adjust_hsv("blue") # name 8 | col6 <- adjust_hsv(4) # integer 9 | col7 <- adjust_hsv(palette(), alpha=0.1) # multiple colors, alpha 10 | 11 | cols <- c(col2, col3, col4, col5, col6, col7) 12 | 13 | stopifnot(all(is.character(cols))) # character 14 | stopifnot(all(substring(cols, 1, 1) == "#")) # start with # 15 | stopifnot(all(nchar(cols) %in% c(7, 9))) # either 7 or 9 chars long 16 | 17 | barplot(rep(1, length(cols)), col=cols, space=0, border=NA) # can be used 18 | -------------------------------------------------------------------------------- /tests/heatmap2Test.R: -------------------------------------------------------------------------------- 1 | suppressMessages(library(gplots)) 2 | data(mtcars) 3 | x <- as.matrix(mtcars) 4 | rc <- rainbow(nrow(x), start=0, end=.3) 5 | cc <- rainbow(ncol(x), start=0, end=.3) 6 | 7 | heatmap.2(x) ## default - dendrogram plotted and reordering done. 8 | heatmap.2(x, dendrogram="none") ## no dendrogram plotted, but reordering done. 9 | heatmap.2(x, dendrogram="row") ## row dendrogram plotted and row reordering done. 10 | heatmap.2(x, dendrogram="col") ## col dendrogram plotted and col reordering done. 11 | 12 | heatmap.2(x, keysize=2) ## default - dendrogram plotted and reordering done. 13 | 14 | 15 | heatmap.2(x, Colv=FALSE) 16 | heatmap.2(x, Colv=NULL) 17 | 18 | heatmap.2(x, Rowv=FALSE) 19 | heatmap.2(x, Rowv=NULL) 20 | 21 | heatmap.2(x, Rowv=FALSE, dendrogram="both") ## generate warning! 22 | heatmap.2(x, Rowv=NULL, dendrogram="both") ## generate warning! 23 | heatmap.2(x, Colv=FALSE, dendrogram="both") ## generate warning! 24 | 25 | 26 | 27 | heatmap.2(x,dendrogram="both", Rowv=FALSE) ## row and col reordering done, but only col dendrogram plotted 28 | heatmap.2(x,dendrogram="row", Rowv=FALSE) 29 | 30 | 31 | heatmap.2(x,dendrogram="col", Rowv=FALSE) 32 | heatmap.2(x,dendrogram="none", Rowv=FALSE) 33 | 34 | 35 | heatmap.2(x,dendrogram="both", Colv=FALSE) ## row and col reordering done, but only row dendrogram plotted 36 | heatmap.2(x,dendrogram="row", Colv=FALSE) 37 | heatmap.2(x,dendrogram="col", Colv=FALSE) 38 | heatmap.2(x,dendrogram="none", Colv=FALSE) 39 | 40 | ## above statement is same as heatmap.2(x,Colv=FALSE) 41 | heatmap.2(x,dendrogram="col", Colv=FALSE) ## col reordering done, but no dendrogram plotted 42 | 43 | 44 | hv <- heatmap.2(x, col=cm.colors(256), scale="column", 45 | RowSideColors=rc, ColSideColors=cc, margin=c(5, 10), 46 | xlab="specification variables", ylab= "Car Models", 47 | main="heatmap(, \n ..., scale=\"column\")", 48 | tracecol="green", density="density") 49 | 50 | ## IGNORE_RDIFF_BEGIN 51 | str(hv) # the two re-ordering index vectors 52 | ## IGNORE_RDIFF_END 53 | 54 | ## Test row and column separators 55 | heatmap.2(x,dendrogram="col", colsep=1) ## one colsep 56 | heatmap.2(x,dendrogram="col", rowsep=1) ## one rowsep 57 | 58 | heatmap.2(x,dendrogram="col", colsep=1:2) ## two colseps 59 | heatmap.2(x,dendrogram="col", rowsep=1:2) ## two rowseps 60 | -------------------------------------------------------------------------------- /tests/heatmap_to_heatmap.2_test.R: -------------------------------------------------------------------------------- 1 | suppressMessages(library(gplots)) 2 | data(mtcars) 3 | 4 | x <- as.matrix(mtcars) 5 | 6 | ## draws expected image 7 | testHeatmap <- heatmap(x, Colv=NA, col=bluered(256), scale="column", 8 | keep.dendro=TRUE) 9 | 10 | # to prove this dendro is OK, redraw with same function: 11 | heatmap(x, Colv=NA, col=bluered(256), scale="column", 12 | keep.dendro=TRUE, Rowv=testHeatmap$Rowv) 13 | 14 | # but it doesn't work with heatmap.2() 15 | heatmap.2(x, Colv=NA, col=bluered(256), scale="column", 16 | Rowv=testHeatmap$Rowv, dendrogram="row") 17 | -------------------------------------------------------------------------------- /tests/plotmeans_nobars.R: -------------------------------------------------------------------------------- 1 | ## Test that plotmeans works properly when bars=F 2 | ## Bug repoted by Alan Yong, Research Geophysicist, 3 | ## US DEPARTMENT OF THE INTERIOR 4 | 5 | suppressMessages(library(gplots)) 6 | data(state) 7 | plotmeans(state.area ~ state.region, bars=FALSE) 8 | -------------------------------------------------------------------------------- /tests/test.reorder.factor.R: -------------------------------------------------------------------------------- 1 | ## Test results before and after loading gdata 2 | 3 | m <- factor(c('a','b','c')) 4 | 5 | ( m1 <- stats::reorder(m, X=c(3, 2, 1)) ) 6 | 7 | ( m2 <- gplots::reorder.factor(m, X=c(3, 2, 1)) ) 8 | 9 | stopifnot(identical(m1,m2)) 10 | -------------------------------------------------------------------------------- /tests/test_plottingDeepDendrogram.R: -------------------------------------------------------------------------------- 1 | suppressMessages(library(gplots)) 2 | 3 | dat <- as.matrix(read.csv(file="dat.csv", row.names=1)) 4 | dist2 <- function(x) as.dist(1-cor(t(x), method="pearson")) 5 | hclust1 <- function(x) hclust(x, method = "single") 6 | 7 | distance <- dist2(dat) 8 | cluster <- hclust1(distance) 9 | 10 | dend <- as.dendrogram(cluster) 11 | 12 | ## R's default recursion limits will be exceeded when plotting this dendrogram 13 | try( gplots:::plot.dendrogram(dend) ) 14 | try( heatmap.2(dat, Rowv=dend) ) 15 | 16 | ## Increase them and try again 17 | options("expressions"=20000) 18 | gplots:::plot.dendrogram(dend) 19 | heatmap.2(dat, Rowv=dend) 20 | -------------------------------------------------------------------------------- /vignettes/venn.Rmd: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Venn Diagrams with `gplots`" 3 | date: "`r Sys.Date()`" 4 | author: "Steffen Möller" 5 | output: 6 | html_vignette: 7 | toc: yes 8 | editor_options: 9 | chunk_output_type: console 10 | --- 11 | 16 | 17 | 18 | Venn diagrams [Wikipedia](https://en.wikipedia.org/wiki/Venn_diagram) allow for a quick overview on the number of elements that multiple sets share. When those elements represent traits of real objects, like observations in biomedical sciences, marketing, etc., this may direct researchers to further investigations or decisions. 19 | 20 | The `gplots` package provides Venn diagrams for up to five sets. The R code to produce the diagrams is straightforward. The plot function behaves the same, depending only on the number of overlapping circles to draw. Its input is a table that is produced by another function. The `venn()` function calls one after the other and is the only one to be seen by the user. The values shown are returned invisibly. 21 | 22 | The `venn()` function accepts either a list of sets as an argument, or it takes a binary matrix—one column per set—indicating for every element, one per row, the membership with every set. 23 | 24 | The common form with overlapping circles works with up to three sets, as seen here: 25 | 26 | ```{r, fig=TRUE, echo=TRUE, message=FALSE} 27 | suppressMessages(library(gplots)) 28 | venn( list(A=1:5,B=4:6,C=c(4,8:10)) ) 29 | ``` 30 | 31 | 32 | The names of columns or the list elements are the set names. To squeeze extra circles in, those circles need to become ellipses. This works for four sets: 33 | 34 | ```{r, fig=TRUE, echo=TRUE, message=FALSE} 35 | v.table <- venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12)) ) 36 | print(v.table) 37 | ``` 38 | 39 | 40 | And maybe even more impressively for five: 41 | 42 | ```{r, fig=TRUE, echo=TRUE, message=FALSE} 43 | venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12),E=c(2,4,6:9)) ) 44 | ``` 45 | 46 | The man page of venn() lists options to change the appearance of the plots, e.g., the names of the sets may be omitted, and sizes changed. However, there is ample opportunity to extend the functionality of this package, such as: 47 | 48 | * More dimensions 49 | * Colors 50 | * Variation of size of circles with the number of members in the set 51 | * Density plot rather than numbers, identification of individual entries 52 | 53 | The prime personal interest is in the increase of dimensions. Please send patches for features you are most interested in. 54 | 55 | --------------------------------------------------------------------------------