You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用ggplot与gridExtra组合图表表格的优化方案及数字格式控制求助

优雅实现图表与表格组合并控制数字位数的方案

核心优化思路

  • 无需将tibble转为data.frame,直接通过dplyr语法完成数字格式化
  • 保持代码的tidy风格,简化流程同时提升可读性
  • 直接用格式化后的tibble生成表格Grob对象

完整代码示例

library(tidyverse)
library(gridExtra)

# 生成数据
ddd <- bind_cols(runif(5, 0, 1), runif(5, 0, 1)) |>
  set_names(c("yo", "hi"))

# 格式化数字并生成表格Grob(无需转data.frame)
table_grob <- ddd |>
  mutate(across(everything(), ~ format(., digits = 1))) |>
  tableGrob()

# 绘制散点图
plot <- ggplot(data = ddd) +
  geom_point(aes(x = yo, y = hi))

# 组合图表与表格
grid.arrange(plot, table_grob, layout_matrix = rbind(c(1, 2)))

关键步骤说明

  • 数字位数控制:用mutate(across(everything(), ~ format(., digits = 1)))直接对tibble的所有列进行格式化,一步到位,省去类型转换步骤
  • 表格Grob生成:格式化后的tibble可直接传入tableGrob(),无需额外处理
  • 布局组合:保留原有的layout_matrix方式,灵活调整图表与表格的排列比例

内容的提问来源于stack exchange,提问作者olybear82

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 13:24:54