The following digital tools were used to develop this site:
R
: R
is a software language and programming environment for statistical computing and for the graphical analysis of data. It is available for use as “Free Software”" under the terms of the Free Software Foundation’s GNU General Public License.Rmarkdown
: Rmarkdown
is a package for R
that combines simple markdown
authoring tools for formatting text with chunks of R
code; when compiled using knitr
the resulting output is a formatted document that contains the results of executing the embedded R
code. Although Rmarkdown
can produce files in a variety of formats, the two of particular interest in this project are html
and pdf
formats.RStudio
: RStudio
is an integrated development environment that, among other features, provides a console for running R
, a window for editing files, a window for managing files, a window for viewing plots, a window for viewing help files, and an internal browser window for viewing dynamic content. RStudio
also provides tools for automating many tasks. Although RStudio
is a convenient way to manage this project, it is not a requirement as it simply provides a way to work with R
and Rmarkdown
.R Packages
: One of the strengths of R
is the availability of packages of R
functions that are designed to work with data. The materials in this project, for example, use the plotly
package to create interactive graphics, the DT
and the magrittr
packages to create interactive data tables, and the animation
package to create video animations.This website consists of a set of .Rmd
files created using Rmarkdown
and two .R
script files that contain functions written to simulate, plot, and extract data from cyclic voltammetry experiments (cvFunctions.R
) and to draw redox ladder diagrams (ladder_pot.R
). Each .Rmd
files was converted into an html
webpage and then linked together into a single website—the structure for which is defined by a user-written _site.yml
file—using the command
rmarkdown::render_site()
As a student work through the material, s/he can edit any of the .Rmd
files by adding text and chunks of R
code, perhaps to answer a problem, to annotate existing text with comments, to make a list of questions to explore; and s/he also can create new .Rmd
files and add them to the _site.yml
file. Rendering any pre-existing .Rmd
file using the command
rmarkdown::render_site("file.name")
will update its .html
file. When adding a new .Rmd
file, it is necessary to add it to the _site.yml
file and to re-render the full site by using the command
rmarkdown::render_site()
You can obtain a complete copy of all files at the project’s Github site.