在《你所不知道的,R的N种打开方式》一文中,我介绍了R的N种界面,这里将介绍一个用python写的极其现代化的R命令行界面,rtichoke(之前叫rice)之于R,就像ipython之于python一样。

特性

  • 轻量,不需要编译
  • 多行编辑,这点很重要啊,长长的命令可以换行后,随便回去编辑前面的指令
  • 语法高亮,这可是R命令行所没有的,看起来舒服多了
  • 自动补齐,减少输入
  • 支持bracketed paste mode,也就是说你copy-paste了有换行符的字符串,不会拷进去就自动执行了
  • 支持Windows, macOS 和 Linux
  • 支持vi, emacs等编辑模式
  • 可以多种高亮模式

Continue reading

最初github上用户(@JustGitting)报告说geom_hilightgeom_cladelabel不能用于unrooted树。详见:https://github.com/GuangchuangYu/ggtree/issues/118

我表示这确实是不行的,然后这就变成了feature request。我继续表示unrooted tree在ggtree中的实现并不好,我只实现了equal angle algorithm,在写注释图层之前,如果我有时间的话,我希望可以先实现更好的layout algorithm。

然后JustGitting表示,他发现python的ETE和R的ape,在无根树的可视化上好像都不太行。问我有什么unrooted的layout algorithm,有没有什么参考文献,或许他可以帮忙实现,因为他觉得ggtree是最成熟的软件。

Continue reading

最近公众号「生信媛」和「生信宝典」的小伙伴在说ggplot2无法一次性设置所有字体,theme只能设置axis text, title这些,而搞不了geom_textgeom_text必须要手工输入family=XXX来设置,因为不能使用theme来更换,也就是说没办法通过后处理来设定,比较麻烦。

这显然是不对的,后处理必须可以的,一次性满足所有愿望也只是因为没人写个神奇的函数而已。于是我就动手写了个set_font的函数。

假设我们有下图:

library(ggplot2)
d <- data.frame(x=rnorm(10), y=rnorm(10), lab=LETTERS[1:10])
p <- ggplot(d, aes(x, y)) + 
    geom_text(aes(label=lab, color=lab), size=10) + 
	geom_text(aes(y, x, label=lab), size=3)

Continue reading

3D版邪恶的曲线

我的公众号biobabble第一篇原创文章《邪恶的曲线》,因为太邪恶,当时只推送给男性关注者,由于不是推送给所有人,所以历史记录是翻不到的,之前有再文字推送一下链接,结果评论区全是差评,我也是蛮囧rz的…

无意中我又翻到了一张2012年2月份画的3D版本,尽管你们要差评,还是想分享一下。代码就在截屏之中,想玩的话,可以照着输入,支持鼠标旋转哦,可以慢慢把玩(太邪恶了)。

Continue reading

5s无缘无故突然就自带3D效果,可是苹果没送我3D眼镜啊!做为一个果粉,自从乔帮主离去之后,对苹果是越来越无爱了。

anyway,对于这部陪伴许久的手机,还是要纪念一下的。

按地理位置分面》一文最后我埋了个伏笔,写到最后的时候,我想到的是可以拿来画个元素周期表,但懒得搞,在《ggplot2分面之像素艺术》一文里用一只火鸡展示了用图来拼像素画的思路,回应了前文的伏笔。今天继续展示一个像素画,为了纪念我的iphone5S,当然我要画个苹果🍎出来。

这里的图,用的是emoji来画,如果你还不会用emoji来画图装逼,赶紧戳《看完此文, 你也能够大开脑洞, 上升逼格》。然后用geofacet来拼出像素画,这个时候,你应该想到可以拿来拼你的照片,画个某个形状的照片墙了。

Continue reading

Author's picture

Guangchuang Yu

Bioinformatics Professor @ SMU

Bioinformatics Professor

Guangzhou