# Software Development

I have developed software packages for generative art, data analysis, data visualisation; and outlier detection. The source code for all of my publicly available software packages can be found on GitHub.

## R

### ggflowchart

{ggflowchart} is an R package for creating flowchart diagrams using {ggplot2}.

doi: 10.32614/CRAN.package.ggflowchart

CRAN: cran.r-project.org/web/packages/ggflowchart

GitHub: github.com/nrennie/ggflowchart

### PrettyCols

{PrettyCols} is an R package containing aesthetically pleasing colour palettes. The structure of the package is based on code from the {PNWColors}, {wesanderson}, and {MetBrewer} packages.

doi: 10.32614/CRAN.package.PrettyCols

CRAN: cran.r-project.org/web/packages/PrettyCols

GitHub: github.com/nrennie/PrettyCols

### RSSthemes

{RSSthemes} is an R package for styling graphics for RSS publications. This package accompanies the Best Practices for Data Visualisation guidance, published by the Royal Statistical Society, which can be found at rss.org.uk/datavisguide.

doi: 10.32614/CRAN.package.RSSthemes

CRAN: cran.r-project.org/web/packages/RSSthemes

GitHub: github.com/nrennie/RSSthemes

### aRt

{aRt} is an R package to create generative art, using {ggplot2} graphics.

GitHub: github.com/nrennie/aRt

### aRtData

{aRtData} is an R package containing data used in the {aRt} package. Data generating functions are available, and the data included in the package use the default values from the functions in {aRt}.

GitHub: github.com/nrennie/aRtData

### funcnetout

{funcnetout} is an R package for detecting functional outliers in a network setting, with options for online or offline detection.

GitHub: github.com/nrennie/funcnetout

### ggalttext

{ggalttext} is an R package which generates alt text for plots created in {ggplot2}.

GitHub: github.com/nrennie/ggalttext

### ggtextcircle

{ggtextcircle} is a {ggplot2} extension R package which contains `geom`

and `stat`

functions for plotting angled text in a (partial) circle.

GitHub: github.com/nrennie/ggtextcircle

### LondonMarathon

{LondonMarathon} is an R package containing two data sets about London Marathon scraped from Wikipedia.

### messy

For the purposes of teaching, it is often desirable to show examples of working with messy data and how to clean it. The {messy} R package creates messy data from clean, tidy dataframes so that students have a clean example to work towards.

GitHub: github.com/nrennie/messy

### simnetdemand

{simnetdemand} is an R package used to simulate demand patterns for different types of transport network.

GitHub: github.com/nrennie/simnetdemand

### usefunc

{usefunc} is an R package containing some additional useful functions.

GitHub: github.com/nrennie/usefunc

### WBLifeExpectancy

{WBLifeExpectancy} is an R package for analysing and visualising World Bank life expectancy data. It was created and used for the analysis in the Significance article We’re not getting any younger! Or should that be “older”?

## Python

### PrettyCols

`PrettyPyCols`

is a Python package containing aesthetically pleasing colour palettes. It’s a Python implementation of the {PrettyCols} R package.

GitHub: github.com/nrennie/PrettyPyCols

## Quarto Extensions

### PrettyPDF

`PrettyPDF`

is a Quarto extension which provides LaTeX templates and styling to create aesthetically pleasing PDF documents.

GitHub: github.com/nrennie/PrettyPDF

### PrettyTypst

`PrettyTypst`

is a Quarto extension which provides Typst templates and styling to create aesthetically pleasing PDF documents using Typst.

GitHub: github.com/nrennie/PrettyTypst