UBC-MDS / software-review-2022

0 stars 0 forks source link

Submission Group 1 - magmavizR (R) #45

Open ruben1dlg opened 2 years ago

ruben1dlg commented 2 years ago

Submitting Author Name: Ruben De la Garza Macias

Submitting Author Github Handle: !--author1-->@ruben1dlg<!--end-author1--

Other Package Authors Github handles: @miyer26, @iamMoid, @shyan0903

Repository: https://github.com/UBC-MDS/magmavizR

Version submitted: v1.0.0

Submission type: Standard

Editor: @miyer26, @iamMoid, @shyan0903, @ruben1dlg

Reviewers: @gutermanyair, @gn385x, @danfke

Archive: TBD Version accepted: TBD Language: en

Package: magmavizR
Title: magmavizR is a plotting package
Version: 0.0.0.1
Authors@R: 
    c(person(given = "Ruben", family = "De la Garza", role = c("aut", "cre"), email="ruben1dlg@gmail.com"),
    person(given = "Irene", family = "Yan", email="ruben1dlg@gmail.com"),
    person(given = "Mukund", family = "Iyer", email="ruben1dlg@gmail.com"),
    person(given = "Adbul Moid", family = "Mohammed", email="ruben1dlg@gmail.com"))           
Description: This is a plotting package that has a purpleorange color theme.
License: MIT + file LICENSE
Encoding: UTF-8
LazyData: true
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.1.1
Suggests: 
    testthat (>= 3.0.0)
Config/testthat/edition: 3
Imports: 
    ggplot2,
    GGally,
    palmerpenguins

Scope

This package is for data visualization, therefore it does not fall into any of the above categories. It has functions with the sole objective of creating plots promptly and easily based on the 'ggplot2' package

This package is designed to be used by data scientists who are exploring data or developing a visual dashboard. The package is versatile and can be used for most data science projects.

Similar packages include [quickplot] https://cran.r-project.org/web/packages/quickPlot/index.html - also a high level package based on ggplot that generates plots modularly, and [BoutrosLab.plotting.general] (https://cran.r-project.org/web/packages/BoutrosLab.plotting.general/index.html) - same motivation as this package, plots on a high level with a standard format. It does not use ggplot however.

Technical checks

Confirm each of the following by checking the box.

This package:

Publication options

MEE Options - [ ] The package is novel and will be of interest to the broad readership of the journal. - [ ] The manuscript describing the package is no longer than 3000 words. - [ ] You intend to archive the code for the package in a long-term repository which meets the requirements of the journal (see [MEE's Policy on Publishing Code](http://besjournals.onlinelibrary.wiley.com/hub/journal/10.1111/(ISSN)2041-210X/journal-resources/policy-on-publishing-code.html)) - (*Scope: Do consider MEE's [Aims and Scope](http://besjournals.onlinelibrary.wiley.com/hub/journal/10.1111/(ISSN)2041-210X/aims-and-scope/read-full-aims-and-scope.html) for your manuscript. We make no guarantee that your manuscript will be within MEE scope.*) - (*Although not required, we strongly recommend having a full manuscript prepared when you submit here.*) - (*Please do not submit your package separately to Methods in Ecology and Evolution*)

Code of conduct

gutermanyair commented 2 years ago

Package Review

Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide

Documentation

The package includes all the following forms of documentation:

Functionality

Estimated hours spent reviewing:

1.5 hours


Review Comments

You have an amazing package but here are a few comments for you guys! <3

  1. The codecov badge does not show the percentage of coverage.

  2. There is not much detail in comparing other similar packages in the readme, I am aware that there must be many EDA packages out there!

  3. I see that your plots only display in one color scheme, if people want to use the EDA plots in their report maybe adding in an option for a choice of color scheme would be very nice!

  4. If I could add more stuff to your package I would maybe want to include violin plots and heat maps and then your package, in my opinion, would cover everything needed for an EDA report

  5. Maybe you guys can add the bins functionality to the histogram function so that people using your package have a little more flexibility to be able to draw meaningful results from their EDA when using your functions.

I love you all especially Moid, but don't forget about the beast Mukund! Keep up the amazing work you all!

danfke commented 2 years ago

Package Review

Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide

Documentation

The package includes all the following forms of documentation:

Functionality

Estimated hours spent reviewing: 1 hour


Review Comments

  1. There is a warning when running test() that states that the non-numeric columns are being ignored. I think this could be handled in the function so that it doesn't throw a warning.

  2. I think the labels in the corrplot function should be formatted so that they are farther away from the plot, to prevent overlap with the labels and the plot.

  3. Docstrings are written for each function and hosted on the pkgdown site but when I try to find the docstring of the histogram() function using RStudio I get this instead URL '/help/library/magmavizR/html/histogram.html' not found. Something is going wrong with the hosting of the docstrings.

  4. Having a bin size or bin number argument for the histogram function would be very useful to the user.

  5. The code coverage is good at 83% but having it above 90% would be great!

Another great package from this team. You guys implemented your python functionality well into R! Great job!

gn385x commented 2 years ago

Package Review

Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide

Documentation

The package includes all the following forms of documentation:

Functionality

Estimated hours spent reviewing: 1 hours


Review Comments

A great package and counterpart to your Python one, team! A few suggestions:

  1. All functions are user-friendly and easy to understand. One suggestion for major improvement is to synthesize all those well-written functions in the package to prevent users from having the impression that the package was written inconsistently by multiple people. For example, you should have the same template for titles, axis labels, and legend labels for all functions.
  2. The titles of your four plots should be meaning and uniform. For example, boxplot and histogram currently do not have a title while correlation plot has a title of the plot type itself instead of a meaningful message as in the title of the scatterplot.
  3. In the future, you might want to consider allowing users to customize plots a bit more. For example, you might be able to let the users decide the bin size of the histograms.
  4. Echoing two reviewers above, it would be nice to increase the code coverage to be over 90%. One suggestion is to add more (sophisticated) tests so that all your functions and edge cases are tested.
  5. I also got the same warning when running test() as Daniel did. You might want to look further into this to get rid of the warning.