New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[REVIEW]: pygtc: beautiful parameter covariance plots (aka. Giant Triangle Confusograms) #46
Comments
/ cc @openjournals/joss-reviewers - would anyone be willing to review this submission? If you would like to review this submission then please comment on this thread so that others know you're doing a review (so as not to duplicate effort). Something as simple as Reviewer instructions
Any questions, please ask for help by commenting on this issue! 🚀 |
@dfm: do you mind reviewing this submission? |
✋ sure, I'm on it. |
@dfm ✨ I'll need to add you to the |
Yep |
@dfm - you should see the invite at the top of this page: https://github.com/openjournals |
General checks
There is no archived release linked from the documentation or readme and there is no DOI given in the paper. Functionality
The installation instructions are missing a list of prerequisites. Does scipy really need to be a hard dependency? Documentation
There is a vague statement of need in the README but it's not very clear and it is completely missing from the docs. The contents of the paper (and maybe more discussion) should be included in the docs. There is also no discussion of how to interpret these plots. For example, the (incorrect, I would argue!) choice of contour levels should be stated and justified.
In principle, the pip command could install all of the dependencies but they should be discussed in the installation instructions.
There is a demo notebook included in the repository but the docs have no discussion of the usage or even a link to the demo. I think that a gallery of examples or at least a tutorial is required.
The entry point is documented by its docstring and an auto-generated docs entry. This isn't really sufficient to constitute documentation.
No tests are currently included. It might be worth checking out the tests from corner.py for an example of how this could be implemented for similar software.
Missing. There should (at least!) be a link to the GitHub repository from the docs. Software paper
This is well described but the paper incorrectly states that corner.py can't overplot multiple samples. This has never been true! 😉 The claim is also made that the resulting plots are compatible with different journals and a list of options are given but it's not clear to me why this is necessary and why the dpi enters - no one should be submitting rasterized figures to the journals!
The DOI for numpy/scipy is 10.1109/MCSE.2011.37 and matplotlib is 10.1109/MCSE.2007.55. ref Other commentsPackages should never alter the matplotlib rc. The fact that plots made after calling pygtc are different from the same plots made before is not ok. |
Dear All, below you will find our response to the referee report, highlighted in Best regards, Sebastian Bocquet Authors' response: We would like to thank Dan for carefully reviewing our software package and General checks Version: Does the release version given match the GitHub release (0.1.1)? There is no archived release linked from the documentation or readme and We have version bumped to 0.2.0 to generate a Zenodo DOI, which is: 10.5281/zenodo.154122 We added the link to the readme, documentation, and paper. Functionality Installation: Does installation proceed as outlined in the documentation? The installation instructions are missing a list of prerequisites. Does We have made scipy optional, updated the installation instructions, and Documentation A statement of need: Do the authors clearly state what problems the There is a vague statement of need in the README but it's not very clear We have updated both the readme.rst in the repo, as well as the There is also no discussion of how to interpret these plots. For example, We added a note about confidence levels for 2d contours to the Installation instructions: Is there a clearly-stated list of dependencies? In principle, the pip command could install all of the dependencies but They are now clearly stated, along with min/max versions to avoid pip Example usage: Do the authors include examples of how to use the software There is a demo notebook included in the repository but the docs have no The notebook has been extended to the documentation, where it is the basis Functionality documentation: Is the core functionality of the software The entry point is documented by its docstring and an auto-generated docs We have added two tutorials to the documentation, which should be Automated tests: Are there automated tests or manual steps described so No tests are currently included. It might be worth checking out the tests We understand that from the development perspective an automated test could A better indication of whether the package works is for the user to run the Community guidelines: Are there clear guidelines for third parties wishing Missing. There should (at least!) be a link to the GitHub repository from This has been fixed. Software paper A statement of need: Do the authors clearly state what problems the This is well described but the paper incorrectly states that corner.py We have removed the erroneous statement about corner.py. The claim is also made that the resulting plots are compatible with We agree that rasterized figures are basically the devil, which is why References: Do all archival references that should have a DOI list one The DOI for numpy/scipy is 10.1109/MCSE.2011.37 and matplotlib is These are cited correctly now. Other comments Packages should never alter the matplotlib rc. The fact that plots made In hindsight, we couldn’t agree more. We have completely updated pygtc to The one case: When using matplotlib’s built in Tex parser to convert LaTex To get around this, we change the ‘mathtext.fontset’ rcParam, save the On Mon, Aug 1, 2016 at 1:50 PM, Dan Foreman-Mackey <notifications@github.com
|
@arfon: is it possible to update the software version number and rebuild the paper? @SebastianBocquet: thanks for the responses – it's looking much better! I have a few minor comments remaining:
Otherwise, thanks for discussing and addressing all my comments and I think that this looks much better. After these minor comments have been addressed, I think we're good to go. |
It is probably too late, but mpl has
This is actually pretty easy to do mpl.rcdefaults()
mpl.style.use(...) https://github.com/matplotlib/pytest-mpl and the image comparison tests in mpl both include a way to specify rcparams as part of the test and ensure they are properly cleaned up. |
matplotlib/matplotlib#7107 xref to mpl issue |
@dfm - sure thing. Here's the new paper: 10.21105.joss.00046.pdf |
@whedon commands |
Here are some things you can ask me to do:
🚧 Important 🚧 This is all quite new. Please make sure you check the top of the issue after running a @whedon command (you might also need to refresh the page to see the issue update). |
OK, the reviewer is @dfm |
Dear All, below you will find our response to the second referee report. Best regards, Thanks very much for the additional comments. We think our package is much The comment about "sigmas" has nothing to do with Gaussians. It has to do We agree that the discussion has nothing to do with Gaussians, and thank It's not actually true that adding version numbers to the setup.py will not We have removed the version numbers from setup.py and placed them into a I totally disagree on the point about tests. The point of tests for We have written a test for nearly every keyword argument and included them Otherwise, thanks for discussing and addressing all my comments and I think Thank you! On Sun, Sep 18, 2016 at 5:54 AM, Dan Foreman-Mackey <
|
Awesome work! This is getting really close. I installed a clean Python 2.7 (I tried making a few small changes to support Python 3 but it might take some work!) conda environment with numpy, matplotlib, pandas, and nose. I also removed my .matplotlib directory so there aren't any rcParams set. With this installation, I ran the tests with the master branch of pyGTC and got this list of failures. I don't have scipy installed (this is a conda issue) so that error is okay (you should probably actually catch it and make it a pass if scipy isn't installed) but the others are unfortunate. I actually find that none of the figures are qualitatively similar and since I don't have any rcParams set, I would argue that this isn't user error. Compare bare.png: to bare-expected.png |
Thank you very much for finding this issue! This was due to your test On Mon, Oct 3, 2016 at 12:14 PM, Dan Foreman-Mackey <
|
Nope! That isn't the problem. That was an error that should be caught (as I said above) but this doesn't address the actual problem that I brought up. |
Your bare.png is not clearly not being smoothed, as opposed to On Tue, Oct 4, 2016 at 1:53 PM, Dan Foreman-Mackey <notifications@github.com
|
Oops. Sorry, I misread your comment. Looks good now. My last comment is that the tests don't close the figures. I'd change:
to:
Otherwise this looks good. The only thing that I can't sign off on is the version number. I'm not sure if you need to do something or if @arfon does. |
⚡ thanks @dfm. @SebastianBocquet if you can make the final changes suggested then I think we're good to accept. I'll need you make an archive of the reviewed software in Zenodo/figshare/other service and update this thread with the DOI of the archive. You might want to bump the release number to reflect the changes that have been made based on this review. |
The test decorator handles cleaning up the figures. In fact, when trying Thanks, On Tue, Oct 4, 2016 at 5:35 PM, Dan Foreman-Mackey <notifications@github.com
|
Cool. I got a warning that too many figures were open when I ran the tests in Py3 but that must be because the figures don't get closed if the test fails – seems counter intuitive but that is all I can think of. Looks good to me! |
@dfm - can you confirm we're good to accept at this point? @SebastianBocquet if @dfm confirms, the next step is to make an archive of the reviewed software in Zenodo/figshare/other service and update this thread with the DOI of the archive? I can then move forward with accepting the submission. |
👍 good to go! |
And here it is: DOI: 10.5281/zenodo.159225 Thanks, On Wed, Oct 5, 2016 at 9:39 PM, Dan Foreman-Mackey <notifications@github.com
|
@dfm - many thanks for the thorough review. @SebastianBocquet - your paper is now accepted into JOSS and your DOI is http://dx.doi.org/10.21105/joss.00046 . 🎉 🚀 💥 |
Submitting author: @SebastianBocquet (Sebastian Bocquet)
Repository: https://github.com/SebastianBocquet/pygtc
Version: 0.1.1
Editor: @arfon
Reviewer: @dfm
Archive: https://dx.doi.org/10.5281/zenodo.159225
Status
Status badge code:
Reviewer questions
Conflict of interest
General checks
Functionality
Documentation
Software paper
Paper PDF: 10.21105.joss.00046.pdf
paper.md
file include a list of authors with their affiliations?The text was updated successfully, but these errors were encountered: