Это зависит от того, хотите ли вы вырезать или сжать данные. Обычно autoplot выводит объект ggplot в некоторый момент, которым можно манипулировать как таковым.
Для сжатых данных:
library(GenomicRanges) # just to be sure start and end work
gene@ggplot +
scale_x_continuous(limits = c(start(mut), end(mut)), oob = scales::squish)
Для вырезанных данных:
gene@ggplot +
coord_cartesian(xlim = c(start(mut), end(mut)))
Но, если честно, я не уверен, что это самый информативный способ сообщить, что выпостроение внутреннего пространства интрона.
В качестве альтернативы я написал геом модели гена в какой-то момент, который не работает с помощью методов автоплоттинга (что иногда может быть болезненным, если вы хотите все настроить). Недостатком является то, что вам придется выполнять поиск генов вручную и устанавливать эстетику. Плюс в том, что он работает, как и большинство других геомов, и поэтому его легко комбинировать с некоторыми другими данными.
library(ggnomics) # from: https://github.com/teunbrand/ggnomics
# Finding a gene's exons manually
my_gene <- transcriptsByOverlaps(EnsDb.Hsapiens.v86, mut)
my_gene <- exonsByOverlaps(EnsDb.Hsapiens.v86, my_gene)
my_gene <- as.data.frame(my_gene)
some_other_data <- data.frame(
x = seq(start(mut), end(mut), by = 10),
y = cumsum(rnorm(19))
)
ggplot(some_other_data) +
geom_line(aes(x, y)) +
geom_genemodel(data = my_gene,
aes(xmin = start, xmax = end,
y = max(some_other_data$y) + 1,
group = 1, strand = strand)) +
coord_cartesian(xlim = c(start(mut), end(mut)))
Надеюсь, что помог!