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

R语言有序气泡图绘制:如何按mut分组排列同组Pass气泡

实现同一突变类型下传代气泡的同行排列

不需要依赖circleProgressiveLayout的随机布局,直接用ggplot2就能精准控制气泡的排列位置,满足你同一mut(突变类型)下P1、P2、P3气泡在同一行的需求,具体步骤如下:

1. 准备工作与数据预处理

首先加载所需包,并确保Pass列按P1→P2→P3的顺序显示:

library(ggplot2)

# 将Pass转换为有序因子,固定显示顺序
df$Pass <- factor(df$Pass, levels = c("P1", "P2", "P3"))

2. 绘制布局可控的气泡图

利用geom_point实现按行排列的气泡,核心是将mut映射到y轴(同一突变类型共享同一y值,即同一行),Pass映射到x轴(不同传代在同一行的不同位置),freq控制气泡大小,col指定气泡颜色:

ggplot(df, aes(x = Pass, y = mut)) +
  # 绘制气泡,size映射freq,color直接使用col列的颜色值
  geom_point(aes(size = freq, color = I(col)), alpha = 0.8) +
  # 调整气泡大小的范围,避免过大或过小
  scale_size(range = c(3, 10)) +
  # 自定义主题,优化显示效果
  theme_bw() +
  theme(
    axis.title.y = element_text(angle = 0, vjust = 0.5),
    panel.grid.major = element_blank(),
    legend.position = "right"
  ) +
  labs(
    x = "传代",
    y = "突变类型",
    size = "频率"
  )

代码说明

  • aes(x = Pass, y = mut):直接定义布局逻辑,同一mut的所有样本会落在y轴的同一刻度位置(即同一行),不同Pass对应x轴的不同位置。
  • color = I(col):直接使用数据框中col列的十六进制颜色值,无需额外颜色映射。
  • scale_size(range):根据你的数据范围调整气泡的最小和最大尺寸,适配实际需求。

这样绘制出的气泡图,每个突变类型对应的P1、P2、P3气泡会整齐排列在同一行,完全符合你的布局要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 14:14:59