❝本节来介绍一款R包「gguidance」,其主要可以用来自定义设置图例及刻度条,在实际操作中非常的实用,下面小编来简单介绍几个案例来做展示,希望各位观众老爷能够喜欢,更多详细文档请参考作者官方文档。 ❞
❝https://github.com/teunbrand/gguidance ❞
install.package("pak")
pak::pak("tidyverse/ggplot2")
pak::pak("teunbrand/gguidance@main")
library(gguidance)
p <- ggplot(mpg, aes(displ, hwy)) +
geom_point() +
labs(
x = "Engine displacement",
y = "Highway miles per gallon") +
theme(axis.line = element_line())
p + aes(colour = paste(cyl, year)) +
guides(colour = "legend_cross")
p + aes(colour = class) +
guides(colour = "legend_string")
p + aes(colour = cty) +
scale_colour_viridis_c(guide = "colourbar_cap")
p + aes(colour = cty) +
scale_colour_viridis_c(guide = guide_colour_violin(density = mpg$cty))
p + aes(colour = cty) +
scale_colour_viridis_c(
guide = guide_colour_histogram(hist = hist(mpg$cty, breaks = 10))
)
p + guides(x = guide_axis_extend(subtitle = c("Less", "More")))
p + guides(x = "axis_minor")
p + guides(x = "axis_cap")
boxplot <- ggplot(mpg, aes(class, displ)) +
geom_boxplot() +
labs(
x = "Type of car",
y = "Engine displacement"
)
boxplot +
guides(x = guide_axis_nested(
range_start = c(0.5, 3.5),
range_end = c(4.5, 6.5),
range_name = c("First range", "Second range"),
bracket = "square"
))
my_table <- lapply(split(mpg[, c("displ", "cty", "hwy")], mpg$class), colMeans)
my_table <- as.data.frame(do.call(rbind, my_table))
my_table[] <- lapply(my_table, scales::number, accuracy = 0.01)
my_table$class <- rownames(my_table)
boxplot +
guides(x = guide_axis_table(table = my_table, key_col = class))
boxplot + coord_guided("grid_zebra") +
theme(panel.grid.major.x = element_line(alpha("grey50", 0.1)))