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