scale_x_discrete
From ggplot2 v0.9.3.1
by Hadley Wickham
Discrete position.
You can use continuous positions even with a discrete position scale - this allows you (e.g.) to place labels between bars in a bar chart. Continuous positions are numeric values starting at one for the first level, and increasing by one for each level (i.e. the labels are placed at integer positions). This is what allows jittering to work.
Usage
scale_x_discrete(..., expand = waiver()) scale_y_discrete(..., expand = waiver())
Arguments
- ...
- common discrete scale parameters:
name
,breaks
,labels
,na.value
,limits
andguide
. Seediscrete_scale
for more de - expand
- a numeric vector of length two giving multiplicative and additive expansion constants. These constants ensure that the data is placed some distance away from the axes.
See Also
Other position scales: scale_x_continuous
,
scale_x_date
,
scale_x_datetime
,
scale_x_log10
,
scale_x_reverse
,
scale_x_sqrt
,
scale_y_continuous
,
scale_y_date
,
scale_y_datetime
,
scale_y_log10
,
scale_y_reverse
, scale_y_sqrt
Examples
qplot(cut, data=diamonds, stat="bin")
qplot(cut, data=diamonds, geom="bar")
# The discrete position scale is added automatically whenever you
# have a discrete position.
(d <- qplot(cut, clarity, data=subset(diamonds, carat > 1), geom="jitter"))
d + scale_x_discrete("Cut")
d + scale_x_discrete("Cut", labels = c("Fair" = "F","Good" = "G",
"Very Good" = "VG","Perfect" = "P","Ideal" = "I"))
d + scale_y_discrete("Clarity")
d + scale_x_discrete("Cut") + scale_y_discrete("Clarity")
# Use limits to adjust the which levels (and in what order)
# are displayed
d + scale_x_discrete(limits=c("Fair","Ideal"))
# you can also use the short hand functions xlim and ylim
d + xlim("Fair","Ideal", "Good")
d + ylim("I1", "IF")
# See ?reorder to reorder based on the values of another variable
qplot(manufacturer, cty, data=mpg)
qplot(reorder(manufacturer, cty), cty, data=mpg)
qplot(reorder(manufacturer, displ), cty, data=mpg)
# Use abbreviate as a formatter to reduce long names
qplot(reorder(manufacturer, cty), cty, data=mpg) +
scale_x_discrete(labels = abbreviate)
Community examples
Looks like there are no examples yet.