Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,12 @@ Download the code with:

git clone https://github.com/davidnabergoj/bootplot.git

Step into the repository:

cd bootplot

To reproduce Fig. 6 in the paper, which shows 95% confidence intervals for mean penguin bill length, run (on macOS 11 or newer):

bash bootplot/Replicability_Stamp/install_dependencies.sh
bash Replicability_Stamp/install_dependencies.sh

The script automatically installs all dependencies into a local folder inside the repository and generates the figure as `mean_estimate_95.png`, opening it in Preview. It takes a few minutes, most of which is downloading the dependencies into the local environment; the figure itself is generated in approximately 1 second. For more details, see [Replicability_Stamp/README.txt](Replicability_Stamp/README.txt).
66 changes: 50 additions & 16 deletions Replicability_Stamp/README.txt
Original file line number Diff line number Diff line change
@@ -1,18 +1,26 @@
Title: A General Approach to Visualizing Uncertainty in Statistical Graphics
Title: A General Approach to Visualizing Uncertainty in Statistical
Graphics
Authors: Bernarda Petek, David Nabergoj, Erik Strumbelj
Venue: IEEE Transactions on Visualization and Computer Graphics
Operating system: macOS 11 or newer
Code repository: https://github.com/davidnabergoj/bootplot (this submission is the Replicability_Stamp directory inside it)
Reproduced result: Figure 6, left-hand image, produced by our approach that shows 95% confidence intervals for mean bill length per penguin species, created with bootplot, n = 39 samples.

Code repository: https://github.com/davidnabergoj/bootplot
(this submission is the Replicability_Stamp directory inside it)
Reproduced result: Figure 6, left-hand image, produced by our approach
that shows 95% confidence intervals for mean bill length per penguin
species, created with bootplot, n = 39 samples.
========================================================================
This is a submission for the Graphics Replicability Stamp Initiative (GRSI). Please refer to https://www.replicabilitystamp.org for more information.
This is a submission for the Graphics Replicability Stamp Initiative
(GRSI). Please refer to https://www.replicabilitystamp.org for more
information.

WHAT THIS DIRECTORY CONTAINS
------------------------------------------------------------------------
1. install_dependencies.sh -- installs all dependencies (including bootplot) and runs the Python script below.
2. reproduce_figure6.py -- Python script that runs bootplot to produce the figure.
3. penguins.csv -- the dataset used by our method to produce the figure (Palmer penguins, CC0 license).
1. install_dependencies.sh -- installs all dependencies (including
bootplot) and runs the Python script below.
2. reproduce_figure6.py -- Python script that runs bootplot to produce
the figure.
3. penguins.csv -- the dataset used by our method to produce the figure
(Palmer penguins, CC0 license).
4. README.txt -- this file: description and instructions.
5. LIABILITY_FORM.txt -- the liability form.

Expand All @@ -23,16 +31,42 @@ Terminal.app). Download the code with:

git clone https://github.com/davidnabergoj/bootplot.git

Then run the replication script by giving bash its path:
Step into the repository:

cd bootplot

Then run the replication script:

bash bootplot/Replicability_Stamp/install_dependencies.sh
bash Replicability_Stamp/install_dependencies.sh

(The two commands can be run as-is, one after the other: the clone creates a folder named bootplot in your current location, and the second command points into it. If you cloned or downloaded the repository elsewhere, adjust the path accordingly.) That is the only command needed. After a few minutes -- most of which is downloading the dependencies into the local environment -- the reproduced figure opens in Preview and is saved next to the script as mean_estimate_95.png. No administrator password is needed, and nothing is asked during the run, but macOS may ask for permission to access the folder (depending on the folder); click OK.
Those are the only commands needed. After a few minutes -- most of
which is downloading the dependencies into the local environment -- the
reproduced figure opens in Preview and is saved next to the script as
mean_estimate_95.png. No administrator password is needed, and nothing
is asked during the run, but macOS may ask for permission to access the
folder; click OK.

WHAT THE SCRIPT DOES, STEP BY STEP
------------------------------------------------------------------------
1. Downloads Miniconda from Anaconda's official server (repo.anaconda.com), automatically choosing the Apple Silicon or Intel build.
2. Installs Miniconda into the subfolder named miniconda3, inside this directory. Hence, nothing is written into system folders or the home directory, and no administrator password is ever needed.
3. Creates a Python environment in the subfolder named env containing Python 3.12, pip, and pycairo from the conda-forge channel. Figures are rendered with matplotlib's cairo backend, the backend used for the figures in the paper (it allows disabling anti-aliasing, as the paper recommends). conda-forge provides pycairo prebuilt with the cairo graphics library bundled in, so nothing is compiled on your machine.
4. Installs the bootplot library (version 0.0.18) from PyPI into that environment. Installing bootplot automatically brings its own dependencies (numpy, pandas, matplotlib, and others).
5. Runs reproduce_figure6.py with no parameters. The script reads the bundled penguins.csv, applies bootplot with n = 39 resamples, which yields 95% coverage (Table I in the paper), saves the aggregate image to mean_estimate_95.png, and opens it in Preview. On success, the final output message is: "Done. The figure was saved as mean_estimate_95.png in this directory."
1. Downloads Miniconda from Anaconda's official server
(repo.anaconda.com), automatically choosing the Apple Silicon or
Intel build.
2. Installs Miniconda into the subfolder named miniconda3, inside this
directory. Hence, nothing is written into system folders or the home
directory, and no administrator password is ever needed.
3. Creates a Python environment in the subfolder named env containing
Python 3.12, pip, and pycairo from the conda-forge channel. Figures
are rendered with matplotlib's cairo backend, the backend used for
the figures in the paper (it allows disabling anti-aliasing, as the
paper recommends). conda-forge provides pycairo prebuilt with the
cairo graphics library bundled in, so nothing is compiled on your
machine.
4. Installs the bootplot library (version 0.0.18) from PyPI into that
environment. Installing bootplot automatically brings its own
dependencies (numpy, pandas, matplotlib, and others).
5. Runs reproduce_figure6.py with no parameters. The script reads the
bundled penguins.csv, applies bootplot with n = 39 resamples, which
yields 95% coverage (Table I in the paper), saves the aggregate
image to mean_estimate_95.png, and opens it in Preview. On success,
the final output message is: "Done. The figure was saved as
mean_estimate_95.png in this directory."
Loading