Accessible Data Science for the Blind Using R
Three Available Packages Tailored for Visually Impaired R Users
There are three packages for the blind R users “sonify” (Siegert & Williams, 2017) for data sonification; “BrailleR” for data textualization (Godfrey, Warren, Murrell, Bilton, & Sorge, 2020); and “tactileR” for data tactualization [Seo (2020); ].
Data Sonification
You can sonify the scatterplot above using “sonify” package (Siegert & Williams, 2017) as follows:
library(sonify)
sonify(1:5, 1:5)
Data Textualization
You can get an alternative text description for some basic R graphs using “BrailleR” package (Godfrey et al., 2020).
Basic R Graph
Histogram
Figure 2 can be textualized like below:
library(BrailleR)
VI(hist(airquality$Ozone))
## This is a histogram, with the title: Histogram of airquality$Ozone
## "airquality$Ozone" is marked on the x-axis.
## Tick marks for the x-axis are at: 0, 50, 100, and 150
## There are a total of 116 elements for this variable.
## Tick marks for the y-axis are at: 0, 10, 20, and 30
## It has 9 bins with equal widths, starting at 0 and ending at 180 .
## The mids and counts for the bins are:
## mid = 10 count = 37
## mid = 30 count = 34
## mid = 50 count = 14
## mid = 70 count = 15
## mid = 90 count = 9
## mid = 110 count = 4
## mid = 130 count = 2
## mid = 150 count = 0
## mid = 170 count = 1
Boxplot
Figure 3 can be textualized like below:
library(BrailleR)
VI(boxplot(cars$dist))
## This graph has a boxplot printed vertically
## with the title:
## "" appears on the x-axis.
## "" appears on the y-axis.
## Tick marks for the y-axis are at: 0, 20, 40, 60, 80, 100, and 120
## This variable 1 has 50 values.
## An outlier is marked at: 120
## The whiskers extend to 2 and 93 from the ends of the box,
## which are at 26 and 56
## The median, 36 is 33 % from the lower end of the box to the upper end.
## The upper whisker is 1.54 times the length of the lower whisker.
Ggplot
Some graphics produced by ggplot2
package (Wickham et al., 2020) can be also textualized.
The following is the textualized version of the Figure 4:
VI(g)
## This chart has title 'Population Growth'.
## It has x-axis 'Month' with labels .
## It has y-axis 'Population' with labels .
## There is a legend indicating that colour is used to represent factor(year), with 16 levels:
## 2000 represented by colour light greenish blue,
## 2001 represented by colour dark greenish blue,
## 2002 represented by colour brilliant blue,
## 2003 represented by colour very light blue,
## 2004 represented by colour vivid bluish green,
## 2005 represented by colour light bluish green,
## 2006 represented by colour strong reddish brown,
## 2007 represented by colour strong yellowish pink,
## 2008 represented by colour light gray,
## 2009 represented by colour white,
## 2010 represented by colour white,
## 2011 represented by colour white,
## 2012 represented by colour white,
## 2013 represented by colour white,
## 2014 represented by colour white and
## 2015 represented by colour white.
## The chart is a set of 16 lines.
Data Tactualization
You can even make a tactile graph using “tactileR” package (Seo, 2020).
Please refer to the following video that explains how I create a tactile graph.
References
Godfrey, A. J. R., Warren, D., Murrell, P., Bilton, T., & Sorge, V. (2020). BrailleR: Improved access for blind users. Retrieved from https://github.com/ajrgodfrey/BrailleR
Seo, J. (2020). TactileR: Converting r graphics into a braille ready-to-print pdf. Retrieved from https://github.com/jooyoungseo/tactileR
Siegert, S., & Williams, R. (2017). Sonify: Data sonification - turning data into sound. Retrieved from https://CRAN.R-project.org/package=sonify
Wickham, H., Chang, W., Henry, L., Pedersen, T. L., Takahashi, K., Wilke, C., … Dunnington, D. (2020). Ggplot2: Create elegant data visualisations using the grammar of graphics. Retrieved from https://CRAN.R-project.org/package=ggplot2