看腻了Circos,你说你想要直的!

开篇不放图,推文没人读

写在前面

近期,课题组在整一些基因组项目。基因组啊基因组,听起来就知道是涉及到大量的数据分析和图标可视化。而我作为课题组的千年辅助,总是有看到这样那样的一些需求。约莫是一年多以前,那会喊我整一个Circos图....就是圆圆的那种。我等了一段时间,直到某个中午,我在教学楼等着上课。想想如果后面又用perl-Circos,那么会是一个痛苦的事情。于是花了快一个小时,用我的JIGplot绘图引擎实现了简单的可交互的Circos图绘制功能。能绘制的图形如上图圆形。

如何画Circos图

画Circos图,直接来看,他是一个圆的。最快的方式,当然画弧形,画环形,等等。但事实上,了解过图形语法的人应该明白:

  1. 数据都是一样的

  2. 要直还是要弯,都在一念之间【只是一个坐标系的问题】

perl Circos是如何实现的,我并不知道。正如很多图形的代码实现是如何,我确实并不清楚。不过我很清楚,我想要画的图如何实现。

TBtools的Circos图如何实现

在写这个功能之前,我就已经打好了各式各样的基础,其中对于这个图来说,最重要的其实就是一个掰弯的功能。所以TBtools的Circos图实现过程等于...不用实现。

第一步,我直接画一个

第二步,掰弯他

所以,我们可以看到,一切如此顺畅。

你说看腻了弯的,想要直的

很好,这是我的问题。事实上,我以为所有人都喜欢弯的。所以默认就输出弯的。没想到,其实很多时候,还是有不少朋友喜欢直的,其实这个简单。我加了一个参数。

我命由我不由天!

你现在想弯就弯,想直就直。而且你想要直,那么TBtools的输出还更快,毕竟掰弯是需要计算资源的。

写在最后

你看到的一切,只是你看到的。你看不到的一切,却是你落后于人的。

(0)

相关推荐