寫在前面
數(shù)日前,在生信札記微信群中,有一人問如何畫一個(gè)略丑的圖片

從圖片來看,即小RNA的reads展示在染色體上,并用長度做可視化。這個(gè)需求,其實(shí)拿起任何一門語言,手寫一個(gè).svg就可以搞定了。只是讀取read alignment數(shù)據(jù)想想比較辛苦。有比較便捷的方式,那么就是直接使用JBrowser。
我們課題組前面的New Phytologist發(fā)表的那個(gè)文章,在某次審稿過程中,審稿人要求看數(shù)據(jù)(正常要求之一,即使我們已經(jīng)給了accession num)。最終就是直接用JBrowser快快安了一個(gè)插件,并返修(然而....,所以后面走到NewP...當(dāng)然這個(gè)跟JBrowser其實(shí)沒有聯(lián)系)。
年代久遠(yuǎn),早已找不回來那個(gè)圖了(畢竟感覺一般)。
不過,在這個(gè)更早的事情,那會(huì)才與現(xiàn)在導(dǎo)師認(rèn)識,我們便做了一個(gè)事情,即直接改IGV的源碼,以實(shí)現(xiàn)某些功能,其中一個(gè)并沒有什么意義的功能,事實(shí)就是這個(gè)。
圖中,紅色,藍(lán)色,綠色,橙色,灰色 分別對應(yīng) 20-24 nt 的reads

這個(gè)區(qū)間,怎么說,h是一個(gè)21 nt的phasiRNAs 產(chǎn)生區(qū)間。
今天推這個(gè)帖子,就是想說,其實(shí)這個(gè)很簡單。有基本的編程功底,一下子就實(shí)現(xiàn)了。
下載IGV的源碼
直接到github下載.zip文件,隨后解壓
https://github.com/igvteam/igv/
下載IGV源碼的主要原因在于...確實(shí)方便....
安裝IntelliJ IDEA
下載并安裝社區(qū)版本即可
https://www.jetbrains.com/idea/
安裝IntelliJ的主要原因是,從github上來看,IGV開發(fā)群體,似乎就是用的IntelliJ(雖然我還是用Netbeans...業(yè)余無解)
事實(shí)上,寫Java多數(shù)人都知道,IntelliJ其實(shí)是最好的Java開發(fā)IDE。
導(dǎo)入IGV項(xiàng)目
解壓IGV的源碼項(xiàng)目安裝包之后,直接從IntelliJ導(dǎo)入Project即可
找到并修改源碼
隨后稍微看下源碼,很快可以找到....

或許是因?yàn)槲抑耙呀?jīng)嘗試自己設(shè)計(jì),從零寫起兩個(gè)基因組瀏覽器,基本是拿不出手,最后先放下。但是失敗的經(jīng)驗(yàn)也是經(jīng)驗(yàn),我發(fā)現(xiàn),我的思路和實(shí)現(xiàn)邏輯總是跟其他一些軟件的實(shí)現(xiàn)邏輯是類似的,說明我的設(shè)計(jì)是沒問題的。Anyway,反正很容易就找到了AlignmentReader這個(gè)類,加了幾行代碼。
構(gòu)建并打包
修改好之后,直接Build(Build的這一步...如果是直接用Netbeans,那么需要解決一些Test類的路徑問題,直接用IntelliJ則不會(huì)有問題)
<用JDK8的話,exclude java9 相關(guān)的碼,或者是...刪除即可>
基于官網(wǎng)的說明,直接使用gradle在源碼主目錄,命令行環(huán)境打包即可

隨后,即可直接得到改造過的IGV

寫在后面
總的來說....確實(shí)只要一點(diǎn)點(diǎn)編程基礎(chǔ),就可以自己改造出一個(gè)自己需要的IGV....
當(dāng)然,這個(gè)或許跟編程學(xué)習(xí)一樣,稍微寫寫是很簡單的,寫好了太難。也跟生信分析是一樣的,稍微做做,人人都會(huì)(做或者教)。但是深入的分析,則完全不同。
接觸這個(gè)困境,或許對于做生物學(xué)問題的人來說,
- 合作
- 跑跑流程,從生物學(xué)的視角審視結(jié)果,解讀結(jié)果。