前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >gguidance优雅的自定义图例

gguidance优雅的自定义图例

作者头像
R语言数据分析指南
发布2023-08-18 13:51:54
1220
发布2023-08-18 13:51:54
举报

欢迎关注R语言数据分析指南

❝本节来介绍一款R包「gguidance」,其主要可以用来自定义设置图例及刻度条,在实际操作中非常的实用,下面小编来简单介绍几个案例来做展示,希望各位观众老爷能够喜欢,更多详细文档请参考作者官方文档。 ❞

官方文档

❝https://github.com/teunbrand/gguidance ❞

加载R包

代码语言:javascript
复制
install.package("pak")
pak::pak("tidyverse/ggplot2")
pak::pak("teunbrand/gguidance@main")

library(gguidance)

绘制主图

代码语言:javascript
复制
p <- ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  labs(
    x = "Engine displacement",
    y = "Highway miles per gallon") +
    theme(axis.line = element_line())

设置图例布局

代码语言:javascript
复制
p + aes(colour = paste(cyl, year)) +
  guides(colour = "legend_cross")

设置图例颜色

代码语言:javascript
复制
p + aes(colour = class) +
  guides(colour = "legend_string")

设置图例两端形状

代码语言:javascript
复制
p + aes(colour = cty) +
  scale_colour_viridis_c(guide = "colourbar_cap")

设置图例为小提琴

代码语言:javascript
复制
p + aes(colour = cty) +
  scale_colour_viridis_c(guide = guide_colour_violin(density = mpg$cty))

设置图例为直方图

代码语言:javascript
复制
p + aes(colour = cty) +
  scale_colour_viridis_c(
    guide = guide_colour_histogram(hist = hist(mpg$cty, breaks = 10))
  )

刻度添加文本

代码语言:javascript
复制
p + guides(x = guide_axis_extend(subtitle = c("Less", "More")))

设置刻度类型

代码语言:javascript
复制
p + guides(x = "axis_minor")
代码语言:javascript
复制
p + guides(x = "axis_cap")
代码语言:javascript
复制
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" 
  ))

组合表格与图

代码语言:javascript
复制
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))

添加阴影

代码语言:javascript
复制
boxplot + coord_guided("grid_zebra") +
  theme(panel.grid.major.x = element_line(alpha("grey50", 0.1)))
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-07-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 R语言数据分析指南 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 欢迎关注R语言数据分析指南
  • 官方文档
  • 加载R包
  • 绘制主图
  • 设置图例布局
  • 设置图例颜色
  • 设置图例两端形状
  • 设置图例为小提琴
  • 设置图例为直方图
  • 刻度添加文本
  • 设置刻度类型
  • 组合表格与图
  • 添加阴影
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档