[R] how to change the position of xlab in truehist?

Peter Ehlers ehlers at ucalgary.ca
Sat Apr 17 00:23:45 CEST 2010

On 2010-04-16 16:00, Hua Li wrote:
> Hi,
> I'm wondering how can I change the position of xlab in truehist. For example, the following code creats a histogram with 4 bins for my discrete data. I want each bin to be labelled as 0, 1, 2, or 3 in the middle, so that it's clear each bin corresponds to each of the discrete case.
> I was thinking of first delete xlab and then add marks myself, but it doesn't look like it's working. The old label can not be removed by setting xlab="" or xlab = NULL.
> Thanks for your help!
> Hua
> #------------------------
> x = c(rep(0,10),rep(1,100),rep(2,50), rep(3,30))
> library(MASS)
> truehist(x,nbins=4)
> truehist(x,nbins=4,xlab="")

I think you misunderstand 'xlab'; it's the label for the x-axis,
i.e. the 'x' that is produced by your first truehist() call.
You want to change the value labels on the axis. You're on the
right track by leaving that off and then adding your preferred
labels at your preferred locations:

  truehist(x, nbins = 4, xaxt = "n")  ## see xaxt under ?par
  axis(1, at = 0:3 + 0.5, labels = 0:3)

I usually add

  box(bty = "l")

Peter Ehlers
University of Calgary

More information about the R-help mailing list