0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

KaryoploteRで染色体を描く

Posted at

KaryoploteR

karyoploteRはRを用いて核型を描画できるパッケージである。
https://github.com/bernatgel/karyoploteR

GRCh38やGRCh37などの頻繁に利用されるreference配列の描画は下記のようなパッケージなどを用いて対応されており、ワンコマンドで済む。
https://www.bioconductor.org/packages/release/data/annotation/html/BSgenome.Hsapiens.UCSC.hg38.html

一方で、T2Tや非モデル生物などは未対応なので、自分でカスタムゲノムを作成する必要がある。今回はT2Tのゲノムを描画してみることにする。

GRCh38に関する図を描画する

kp <- plotKaryotype(genome="hg38")

GRCh38.png

kp <- plotKaryotype(genome="hg38", chromosomes = "chr1")

GRCh38-Chr1.png

biomaRtを噛ませることで、遺伝子名も自由自在に表記できる。
参照: https://bernatgel.github.io/karyoploter_tutorial/

library(biomaRt)
library(regioneR)

ensembl <- useEnsembl(biomart="ensembl", dataset="hsapiens_gene_ensembl")
genes <- toGRanges(getBM(attributes=c('chromosome_name', 'start_position', 'end_position', 'hgnc_symbol'),
               filters = 'hgnc_symbol', values =gene.symbols, mart = ensembl))
seqlevelsStyle(genes) <- "UCSC"

head(genes)
GRanges object with 1 range and 1 metadata column:
    seqnames            ranges strand | hgnc_symbol
       <Rle>         <IRanges>  <Rle> | <character>
  1     chr1 50960745-50974634      * |      CDKN2C
  -------
  seqinfo: 1 sequence from an unspecified genome; no seqlengths
kp <- plotKaryotype(genome="hg38", chromosomes = "chr1")
kpPlotMarkers(kp, data=genes, labels=genes$hgnc_symbol)

CDKN2C.png

今回は記載しないが、場所とそれに付随する情報があれば基本的にデータとして利用できる。例えば、bamファイルや統計値などをまとめたtsvファイルがあれば、染色体毎のリード深度やマンハッタンプロットなども作成可能である。

T2Tのkpを作成する

T2Tの別名hs1で動かしてみると下記のようなエラーが出る。

> kp <- plotKaryotype(genome="hs1")
'getOption("repos")' replaces Bioconductor standard repositories, see 'help("repositories", package =
"BiocManager")' for details.
Replacement repositories:
    CRAN: https://cran.rstudio.com/
'getOption("repos")' replaces Bioconductor standard repositories, see 'help("repositories", package =
"BiocManager")' for details.
Replacement repositories:
    CRAN: https://cran.rstudio.com/
'getOption("repos")' replaces Bioconductor standard repositories, see 'help("repositories", package =
"BiocManager")' for details.
Replacement repositories:
    CRAN: https://cran.rstudio.com/
Error in value[[3L]](cond) : 
  It was not possible to identify or load the requested genome. Error in .stopOnAvailablePkg(genome): BSgenome.Hsapiens.UCSC.hs1 package is not currently installed.
  You first need to install it, which you can do with:
      library(BiocManager)
      install("BSgenome.Hsapiens.UCSC.hs1")

エラーに従い、以下のように進めてみる。

library(BiocManager)
install("BSgenome.Hsapiens.UCSC.hs1")

kp <- plotKaryotype(genome="hs1", hromosomes="all")

しかし、線しか出て来ず、GRCh38のようなかっこいいkaryotypeにはならない。

T2T.png

Custom genomeとしてT2Tを描画する

そこでcustom genomeを描画してみる。
参照: https://bernatgel.github.io/karyoploter_tutorial//Tutorial/CustomGenomes/CustomGenomes.html

行うべきこととしては、mygenome.txtおよびmycytobands.txtの作成である。

mygenome.txtはchr, start, endからなるtxtファイルが必要である。
https://www.ncbi.nlm.nih.gov/datasets/genome/GCF_009914755.1/
このページのDownloadからtsvファイルを開けるので、それをそのまま利用する。

custom.genome <- toGRanges("~/Downloads/mygenome_T2T.tsv")

mycytobands.txtは以下のサイトのCytobandsに落ちていたので、それをダウンロードして加工する。具体的にはchr start, end, name, gieStainの5行からなるtxtファイルが必要なので、最初に行を足せば良い。
https://github.com/marbl/CHM13?tab=readme-ov-file

custom.cytobands <- toGRanges("~/Downloads/chm13v2.0_cytobands_allchrs.txt")

最後に上で作成したファイルを利用して、plotKaryotypeする。

kp <- plotKaryotype(genome = custom.genome, chromosomes = "all", cytobands = custom.cytobands)

T2T_chr.png

終わりに

P.S. 以下にファイルを置いておきました。
https://github.com/geedrn/T2T_KaryoploteR/tree/main

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?