Miskatonic University Press

An improved graph

r librarystats

I posted More about declining circulation at York on Friday, and then as often happens the next day I realized there was a better way to do it.

Circulation change to 1990 baseline (%) at York University Libraries

There's a new line in this chart: the Frost Library, which serves York's small Glendon campus across town. I looked up how many undergraduate students were at Glendon each year from 1994 on, and then divided Frost's circulation numbers by that population. (There are grad students at Glendon, but not very many, and I don't have that number.) This gives a fair representation of how Frost's circ has been changing over the years. The circ numbers for the main Scott library and the Steacie science library I continue to divide by York's total population.

The other changes are cosmetic and I hope make the chart easier to read. I moved the y-axis to the right-hand side, and changed the labels to show percentages. It's now clearer that Scott circulation has fallen to 33% of what it as in 1990. Frost is at 40% and Steacie at 74%.

Here's the revised R script that did this:

# Read in number of students and circulation per student
enrolment <- read.csv("york-enrolment-1990-2010.csv", header=T)
glendon <- read.csv("glendon-enrolment-1990-2010.csv", header=T)

# Read in branch circ numbers, from annual reports
circ <- read.csv("york-circulation-1990-2010.csv", header=T)

scottPerYearPerStudent = circ$Scott / enrolment$Total
steaciePerYearPerStudent = circ$Steacie / enrolment$Total

# Set extra space on right-margin
par(xpd=T, mar=par()$mar+c(0,0,0,2))

plot(scottPerYearPerStudent / scottPerYearPerStudent[1], type="o", ylim=c(0, 1.2), col="red", axes = FALSE, xlab = "", ylab = "", main="Circulation change to 1990 baseline (%) at York University Libraries")


plot(steaciePerYearPerStudent / steaciePerYearPerStudent[1], type="o", ylim=c(0, 1.2), col = "green", axes = FALSE, xlab="", ylab="")


frostPerGlendonStudent = circ$Frost / glendon$Undergraduates
plot(frostPerGlendonStudent / frostPerGlendonStudent[5], type="o", ylim=c(0, 1.2), col="yellow", axes = F, xlab = "", ylab = "")

axis(1, at = 1:21, labels = enrolment$Year)

rhs = seq(0,1.2, by=0.1)

axis (4, las = 1, at = rhs, labels = rhs *100)

legend(1, 0.4, c("Frost (1994 baseline)","Scott", "Steacie (science)"), cex=0.8, col=c("yellow", "red", "green"), pch=21, lty=1)