跳到正文
0.16.6 文档

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

全站目录 · 按任务查找

将序列绘为左对齐水平骨架,按 geom_seq(seq_order = ...) 从上到下排列,共享同一线性 bp 标度。seq_orientation = -1 同时反转序列、注释、连接与坐标轴,不修改输入。

用法

代码
coord_collinear(
  ratio = 1,
  xlim = NULL,
  ylim = NULL,
  expand = FALSE,
  clip = "off",
  fit = c("labels", "geometry", "manual"),
  align = c("left", "center", "right"),
  anchor = NULL,
  orientation = c("manual", "auto"),
  min_support = 0.1,
  segments = NULL,
  segment_gap = 100
)

参数

ratio

固定 y/x 纵横比,默认 1。

xlim, ylim

可选的用户坐标范围;显式范围优先于自动拟合范围。

expand

逻辑值,是否扩展坐标范围,默认 FALSE。自动拟合已包含少量安全边距;设为 TRUE 可请求 ggplot2 的额外坐标扩展。

clip

是否将绘图裁剪到面板内,默认 "off"。

fit

拟合策略:"labels" 包含测量后的标签框,"geometry" 只拟合几何元素,"manual" 要求显式提供 xlim 和 ylim。

align

显示对齐方式:默认 "left",或 "center"、"right";作用于整条序列或 anchor 指定区间。

anchor

可选锚点,可为按 accver 命名的数值向量,或含 accver 与 position 或 start/end 的数据框。每条显示序列恰好一个锚点;缺失或重复会报错。多拷贝目标须先明确选择。

orientation

默认 "manual" 使用 geom_seq() 提供的方向;"auto" 根据区间连接证据选择显示方向,记录支持及未解决情况。

min_support

自动改变方向所需的最小不平衡程度,范围 [0, 1]。正反支持的差值绝对值除以总和,默认 0.1;平局始终视为未解决。

segments

可选数据框,含唯一窗口 accver、row_id 及 orientation(1 或 -1),须声明全部显示 accession。每个窗口有独立局部坐标和可逆源元数据。

segment_gap

提供 segments 时的正显示间隙,单位为 bp 标度,默认 100,不表示基因组连续。

返回值

可与 ggchord 图组合的 ggplot2 Coord 对象。

详细说明

geom_seq(seq_gap = ...) 表示相邻骨架间距相对最长骨架宽度的比例,默认 0.3。Position 正偏移向上,负偏移向下,与方向无关。序列名放左端旁;自动注释标签使用局部水平行,固定径向标签竖直、切向标签水平。"outside" 表示上方,"inside" 表示下方。显式序列半径、曲率、ring 映射/标度及标签半径无法转换,会报错;从 coord_chord() 切换时须移除。圆图专用的引物、酶切和中心标签要求 coord_circular(),通用线性注释使用 geom_feature()。跨轨连接可能穿过中间轨道。控制点使用导出布局 x/y 单位,最长骨架宽为 2;提供 segments 时按最长完整显示行计算。圆图专有 external = FALSE 标签约束无法转换,移除后使用线性行布局;基因/注释自动标签模式在线性图共享此策略。align 与 anchor 控制可逆显示平移,无锚点时将整条序列的选定边/中心放在 x=0,有锚点时改用锚点区间。左右均指应用方向后的显示区间,源坐标不变。对齐和自动方向不改变序列顺序。orientation = "auto" 根据与较早显示序列的区间连接权重选择方向,第一条固定参照;歧义、支持不足或无连接的序列保留初始方向,证据保存在布局诊断。这是显示启发式,不是生物学链赋值或全局最优保证,不能与显式 geom_seq(seq_orientation = ...) 组合。使用 segments 时各 accession 仍为独立窗口,共享 row_id 的窗口占同一显示行,表内顺序为从左到右,align 作用于整行。segment_gap 以 bp 标度保留空间,与省略长度无关;内部端点有断裂标记。先用 segment_ggchord_data() 裁剪/切分。局部反转由表中 orientation 控制,与自动方向、显式序列方向及 anchor 冲突。连接相邻关系按显示行判断;同行区间连接省略并报告,不支持显式同行比较对或点连接。

示例

代码
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() +
  geom_seq_label() +
  coord_collinear(orientation = "auto")