scale_fill
and scale_colour
.
For more information, see the inspiration for this function:
Matlab's colorbar function.
guide_colourbar(title = waiver(), title.position = NULL, title.theme = NULL, title.hjust = NULL, title.vjust = NULL, label = TRUE, label.position = NULL, label.theme = NULL, label.hjust = NULL, label.vjust = NULL, barwidth = NULL, barheight = NULL, nbin = 20, raster = TRUE, ticks = TRUE, draw.ulim = TRUE, draw.llim = TRUE, direction = NULL, default.unit = "line", reverse = FALSE, order = 0, ...)
guide_colorbar(title = waiver(), title.position = NULL, title.theme = NULL, title.hjust = NULL, title.vjust = NULL, label = TRUE, label.position = NULL, label.theme = NULL, label.hjust = NULL, label.vjust = NULL, barwidth = NULL, barheight = NULL, nbin = 20, raster = TRUE, ticks = TRUE, draw.ulim = TRUE, draw.llim = TRUE, direction = NULL, default.unit = "line", reverse = FALSE, order = 0, ...)
element_text
is expected. By default, the theme is
specified by legend.title
in theme
or theme.TRUE
then the labels are drawn. If
FALSE
then the labels are invisible.element_text
is expected. By default, the theme is
specified by legend.text
in theme
or theme.TRUE
then the colorbar is rendered as a
raster object. If FALSE
then the colorbar is rendered as a set of
rectangles. Note that not all graphics devices are capable of rendering
raster image.unit
for barwidth
and barheight
.TRUE
the colorbar is reversed. By default,
the highest value is on the top and the lowest value is on the bottomscale_*
or in guides
.
guide="legend"
in scale_*
is syntactic sugar for
guide=guide_legend()
(e.g. scale_color_manual(guide = "legend")
).
As for how to specify the guide for each scale in more detail,
see guides
.
guide_legend
,
guides
df <- reshape2::melt(outer(1:4, 1:4), varnames = c("X1", "X2"))
p1 <- ggplot(df, aes(X1, X2)) + geom_tile(aes(fill = value))
p2 <- p1 + geom_point(aes(size = value))
# Basic form
p1 + scale_fill_continuous(guide = "colorbar")
p1 + scale_fill_continuous(guide = guide_colorbar())
p1 + guides(fill = guide_colorbar())
# Control styles
# bar size
p1 + guides(fill = guide_colorbar(barwidth = 0.5, barheight = 10))
# no label
p1 + guides(fill = guide_colorbar(label = FALSE))
# no tick marks
p1 + guides(fill = guide_colorbar(ticks = FALSE))
# label position
p1 + guides(fill = guide_colorbar(label.position = "left"))
# label theme
p1 + guides(fill = guide_colorbar(label.theme = element_text(colour = "blue", angle = 0)))
# small number of bins
p1 + guides(fill = guide_colorbar(nbin = 3))
# large number of bins
p1 + guides(fill = guide_colorbar(nbin = 100))
# make top- and bottom-most ticks invisible
p1 + scale_fill_continuous(limits = c(0,20), breaks = c(0, 5, 10, 15, 20),
guide = guide_colorbar(nbin=100, draw.ulim = FALSE, draw.llim = FALSE))
# guides can be controlled independently
p2 +
scale_fill_continuous(guide = "colorbar") +
scale_size(guide = "legend")
p2 + guides(fill = "colorbar", size = "legend")
p2 +
scale_fill_continuous(guide = guide_colorbar(direction = "horizontal")) +
scale_size(guide = guide_legend(direction = "vertical"))
Run the code above in your browser using DataLab