Skip to content

suppress tick labels

8 messages · Sebastian Leuzinger, Paul Roebuck, Jari Oksanen +4 more

#
hello,
is R able to suppress tick labels (not tick marks)? i know there is a way 
around this with axes=F and then draw new axes, but it would be easier to 
suppress them in the first place.
#
On Thu, 1 Dec 2005, Sebastian Leuzinger wrote:

            
Something wrong with setting them to null string?
----------------------------------------------------------
SIGSIG -- signature too long (core dumped)
#
On 1 Dec 2005, at 17:58, Sebastian Leuzinger wrote:

            
You mean the numbers below or beside each tick? Looking at ?axis 
suggest that you could  set labels=FALSE to suppress those. It indeed 
seems to work, although you get a warning for each omitted tick label 
(but you must get used to warnings if  you plot()). Try:

plot(rnorm(20), labels=FALSE)

cheers, jari oksanen
--
Jari Oksanen, Oulu, Finland
#
On Thu, 2005-12-01 at 10:19 -0600, Paul Roebuck wrote:
That's not what Sebastian requires.

He would like the axis tick marks to be drawn, but without values at the
tickmark locations, as opposed to the axis labels.

There is not a direct way, but a possible workaround:

 plot(rnorm(20), col.axis = "white")

This sets the tick mark label color to be the same as the background,
thus unseen.

If you have an alternate background color, adjust the above accordingly.

For plot.default() specifically and functions that behave similarly
internally with respect to the axes, you could use:

  plot(rnorm(20), labels = FALSE)

where the labels argument is passed to the internal axis drawing
function. However, since 'labels' is passed as a "..." argument, you end
up with a warning about 'labels' not being able to be set in a high
level plot function, since it gets passed as a graphical par.

Ultimately however, I do think that this behavior is best controlled by
using "axes = FALSE" and then calling axis(x, labels = FALSE):

 plot(rnorm(20), axes = FALSE)
 axis(1, labels = FALSE)
 axis(2, labels = FALSE)
 box()

Non-standard plot behavior is best done outside of the default plot
function, where you have maximum flexibility.

HTH,

Marc Schwartz
#
I think the question was about the __tick mark__ labels not the __axis__
labels. The standard way of dealing with this is, as Sebastian said, to draw
customized axes. However, par(lab=c(1,5,5)) reduces the number of tick mark
labels to 2 at the range of the axes, apparently, if that helps.
lab=c(0,5,5)), which one might try to remove the labels, gives an error.

-- Bert Gunter
Genentech Non-Clinical Statistics
South San Francisco, CA
 
"The business of the statistician is to catalyze the scientific learning
process."  - George E. P. Box
#
Sebastian Leuzinger wrote:
Not really suppressing them, but you could you do the following:

plot(1:10, col.axis = "transparent")

I'm not sure if this solution is device independent.

--sundar
#
On Thu, 1 Dec 2005, Marc Schwartz (via MN) wrote:

            
However, if you use col.axis="transparent" or NA, if does directly
suppress drawing the labels.
#
On Thu, 2005-12-01 at 18:33 +0000, Prof Brian Ripley wrote:
Prof. Ripley,

Thanks for point that out, as I note Sundar did as well. I had forgotten
about using 'transparent'.

Thanks,

Marc