跳到正文
0.16.6 文档

本页完整说明已译为现代汉语;函数、参数、代码和原始数据标识保留原样。 使用教程

全站目录 · 按任务查找

绘制比对区间连接,默认将相似度映射到 ribbon_fill。缺少 pident 时使用固定灰色且不显示相似度图例。不会由端点推断比对长度或相似度;其他映射和图例通过 aes()、scale_*()、guides() 控制。

用法

代码
geom_link_ribbon(
  mapping = NULL,
  data = NULL,
  link_ctrl_point = NULL,
  link_gap = NULL,
  link_avoid = c("uniform", "none", "smooth"),
  link_branch = c("none", "query", "subject"),
  link_branch_fraction = 0.15,
  fill = NULL,
  alpha = 0.42,
  colour = "#59636D",
  linewidth = 0.08,
  linetype = NULL,
  adjacent_only = NULL,
  pairs = NULL,
  position = "identity",
  show.legend = TRUE,
  inherit.aes = FALSE,
  ...
)

参数

mapping

默认 NULL,使用预计算数据。

data

默认 NULL,从布局自动获取。

可选的贝塞尔边界控制向量/列表。两个数指定共享控制点,四个数分别指定两条边界的控制点;逐行列表可含成对坐标向量。NULL 在弦图中使用原点 c(0, 0),在线性图中由序列端点推导控制点。共享分支时,控制点影响远端形状,汇合处跟随共享主干。

可选数值/向量,控制序列与连接端点的间距。默认 link_avoid = "uniform" 时,NULL 为每个端点统一选择考虑障碍的间距;"smooth" 仅在 geom_gene()、geom_feature() 多边形附近局部调整,"none" 则使用固定 0.035。忽略文字与引导线。提供数值会关闭自动规则并精确使用该间距。线性布局会缩减自动基础间距以适应窄通道;无法容纳的显式间距或注释避让距离会报错。

避障方式:"uniform"(默认)、"none" 或 "smooth"。平滑方式局部调整,统一方式在整个端点采用同一间距。

共享相同 query 或 subject 端点:"none"、"query"、"subject"。

共享段相对最短成员的长度比例,范围 (0, 0.5]。

fill

可选固定填色,NULL 保留默认的相似度映射。

alpha, colour, linewidth

标准固定样式。显式值优先于对应映射;省略的默认值不会阻止用户映射。例如映射 ribbon_alpha 时应省略 alpha。

linetype

固定轮廓线型。默认 NULL 对相邻显示序列使用实线,对非相邻序列使用虚线;弦图首尾视为相邻。相邻关系按最终显示顺序确定,与比对方向无关。显式固定样式或 aes(ribbon_linetype = ...)(也支持 aes(linetype = ...))覆盖自动样式。数据映射应搭配对应标度,自动样式不会训练线型标度;inherit.aes = TRUE 时使用全局线型映射。

adjacent_only

是否只连接相邻序列。NULL 在 coord_collinear() 中相当于 TRUE,在 coord_chord() 中相当于 FALSE。设为 FALSE 可保留跨轨道连接;弦图首尾也是相邻。

pairs

可选数据框,以 qaccver 和 saccver 选择无序比较对。adjacent_only = NULL 时,显式比较对优先于坐标系默认值。export_ggchord_layout() 报告省略行。

position, show.legend, inherit.aes

标准 ggplot2 图层参数。

...

传给 geom_polygon() 的其他参数。

返回值

一个 ggplot2 图层。

示例

代码
library(dplyr)
data(seq_data_example)
seqs <- seq_data_example |>
  select(accver, length)
data(ribbon_data_example)
links <- ribbon_data_example |>
  select(qaccver, saccver, qstart, qend, sstart, send)
ggchord(seq_data = seqs, ribbon_data = links) +
  geom_seq() +
  geom_link_ribbon()