FancyHeatmap,支持输出嵌入网站了!

开篇主题,FancyHeatmap支持HTML输出,可嵌入已有数据库浏览器框架

写在前面

FancyHeatmap,是我给TBtools中“卡通式热图”命的名字。前述,在公众号上,我已经推出了这个功能相关的新手教程。在后续,我也发现有不少人已经应用:

  1. 在小麦上
  2. 在拟南芥上
  3. 在花生上
  4. 在小米上
  5. 在荔枝上
    ....【注:均尚未发表,故不截图....】

用的人确实还是不会太少的。

为啥写FancyHeatmap

这是一种更为直观的表达量探索工具。相比于常规的热图,“卡通式热图”更符合人的直觉。当然,看起来也有趣一点。事实上,这个功能是“芯片盛行年代”时,就已经有人提出来了。他们发表了“eFP browser”文章。这是一个数据库框架,主要是方便别人搭建这类“卡通式热图”的网页数据库。然而...说实话,我第一次尝试部署作者提供的框架式,花了不只三天。主要问题是:

  1. 需要对网站部署和linux运维有基本认知,如果是要搭建数据库,那么这个觉悟是有的;如果只是想使用卡通式热图探索下表达量的多数人,那么花力气在数据库搭建上,确实得不偿失。
  2. 框架的依赖复杂,而且都是旧版本(我最后使用docker centOS 6 ...以及一些麻烦的调整才搞定的)
  3. MySQL~~~
  4. 原本是用于芯片的,对于FPKM数值,需要修改脚本
    ....

综上,让我再碰这个数据库框架是不可能的。于是有一天,我开发JIGplot的过程中,灵机一动,实现一个ImageEle用于加载图片,不就行了吗?这个应该很简单啊。
很快,实现了FancyHeatmap第一版,需要的是三个文件:

  1. ColorCode2Sample.tab
  2. GeneExp.tab
  3. Image.tga



【注:可以看到,放大之后,图片失真】

非常简单。我之前也写过详细的教程在公众号《生信札记》上。而这个版本【注:第一版】也就是上述其他人所使用的版本。

支持SVG输入,得到矢量图输出和更多的交互式分析

第一版的FancyHeatmap,虽然比较多人使用。但是他存在一个致命的缺点:使用TGA格式的图片作为输入。TGA当然好,只是毕竟位图。图片输出的分辨率已经确定,带来两个问题:

  1. 无法提供良好的后续图片编辑功能,好的文章,往往一个Figure有几个Sub Figures
  2. 输出的图片用于网站,无法良好的应对缩放

Sad。我当然知道eFP browser似乎并没有想法去实现矢量图输入与输出。但是这个没关系啊。于是我进一步开发JIGplot,提供一个SVGtoJIGSubPanel的功能。换句话说,只要将SVG对象转换成JIGplot引擎的对象,那么我就可做任意我想做的操纵。Tada!
于是,FancyHeatmap比eFP browser又多了一个功能【前述:方便也是一个超越】,实现了矢量图输入与输出。当然,不仅如此。
既然不再是ImageEle,而是JIGElement的组合,那么我们可以直接在每个JIGElement上加动作,实现更多的交互分析可能。

支持HTML输出,可嵌入数据库类网站

Emmm... 事实上,自从TBtools推出FancyHeatmap的功能之后,不时有人联系过来。其中大半部分人其实是想在他们的数据库中嵌入这一功能
前述已经提到,eFP browser本身就是做这个事情的,但我个人认为 ,除非公司层面也准备好了docker镜像,否则搭建成本一定很高。更不说docker image是否能够实现eFP browser的Sub HTML。Anyway,专门帮别人搭建数据库的公司还是有的,只要收费合理【注:个人估计2万以上是合理收费】,还是有不少公司愿意做的。
于是,我也收到了一些寻求合作的邮件,当然最后直接将合作转交给课题组的师弟去负责【注:很多时候,我并没有时间掺和也不想掺和】。
但是 ,刚才也提到了。目前无论是eFP Browser还是FancyHeatmap的已有应用,使用的都是第一版本:

  1. 位图输出,缩放失真
  2. 无法良好交互

FancyHeatMap的第二版使用SVG输入,已经搞定这些事情。然而,毕竟是Desktop Application。要搬到浏览器上面,JavaApplet....已经被时代所抛弃。于是,我今天灵机一动,搞个HTML输出不就行了吗?
三下五除二,【边带娃,边Coding】,很快,就实现了。

可以看到,完美!作为一个HTML文件,他就可以直接嵌入到其他任何已有数据库框架。另外,我还非常友好地提供了DIY的方式


也就是,只要用SampleID,写一点JavaScript代码,你想怎么交互,那么就是你的事情....

于是,TBtools的FancyHeatMap从某意义上来说,似乎更有用了一些了。

写在最后

Emmm... 过去的两三个月,似乎一直没有Coding。暂时来说,Java似乎有点生疏了,当然perl估计也差不多,JavaScript...说实话,我又看了大半个小时的语法,才写的....

OKay,推送就写这么多了。最近在忙毕业的事情,也没太多时间整有的没的。基本上,关于FancyHeatmap,自己折腾的人不少哈。这样挺好的。
而如果是寻求合作,建议直接联系我目前所在课题组PI

夏瑞教授 rxia@scau.edu.cn

如果你执意要跟我联系,那么也没问题,

CJ: ccj0410@gmail.com

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,924评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,902评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,716评论 0 239
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,783评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,166评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,510评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,784评论 2 311
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,476评论 0 196
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,196评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,459评论 2 243
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,978评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,321评论 2 252
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,964评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,046评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,803评论 0 193
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,530评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,420评论 2 265

推荐阅读更多精彩内容