Dear R Help,

I would be very grateful if somebody could explain why this is happening.  I
am trying to plot a lattice barchart of a vector of numbers with age
bandings that I have brought together into a data frame.  When I plot the
variables in their raw vector form, it works.  When I try to plot them in
the df, R labels the numeric axis with default factor values and treats the
numeric vector as character.  Why is this?  Apologies if this is blindingly
obvious, I am new to R.

Here is some sample code that demonstrates the problem:

library(lattice)

# Load in some sample data ...
ageband <- c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18)
agenames <-
c("00-04","05-09","10-14","15-19","20-24","25-29","30-34","35-39",
"40-44","45-49","50-54","55-59","60-64","65-69","70-74","75-79","80-84","85
plus")
popcount <-
c(35274,40958,41574,47973,50384,51248,65748,54854,60948,66473,70854,
60475,61854,55848,45857,30584,25475,20574)


region <- "North East"
test1 <- as.data.frame(cbind(region,ageband,agenames,popcount))
region <- "North West"
test2 <- as.data.frame(cbind(region,ageband,agenames,popcount))
test <- rbind(test1,test2)
names(test) <- c("GOR","Band","AgeBand","Persons")

# When I plot my numeric data from the df it is treated as character
vector...

hg1 <- barchart(AgeBand ~ Persons | GOR,
        data=test,
        origin=0,
        layout=c(2,1),
        reference=TRUE,
        xlab="Count (Persons)",
        ylab="Quinary Age Band",
        scales="free")

hg1

# But when I plot the source vectors in the same way, it works how I want it
to... (without the region bit, of course)
hg2 <- barchart(agenames ~ popcount | region,
        origin=0,
        layout=c(2,1),
        reference=TRUE,
        xlab="Count (Persons)",
        ylab="Quinary Age Band",
        scales="free")
hg2

	[[alternative HTML version deleted]]

