绘制“序列标志”使用ggplot2?
Is it (reasonably) possible to plot a sequence logo plot using ggplot2?
There is a package to do it which is based on "grid" called "seqLogo", but I was wondering if there could be a ggplot2 version of it.
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
ggseqlogo 应该是您要找的。我希望这可以减轻一些挫败感,我相信你们中的许多人在 R 中绘制序列徽标时都会遇到这样的挫败感
ggseqlogo should be what you're looking for. I hope this can relieve some of the frustrations I’m sure many of you have when it comes to plotting sequence logos in R
我正在提交一个 ggplot2 尝试,它与上面的 Leipzig/Berry 解决方案有些相似。这种格式稍微更接近标准语标。
但我的解决方案,以及我认为任何 ggplot2 解决方案,仍然存在不足,因为
ggplot2
无法控制绘图符号的纵横比。这是(我认为)生成序列徽标所需的核心功能,而 ggplot2 中缺少该功能。另请注意:我使用了Jeremy Leipzig的答案中的数据,但我没有对小样本量或%进行任何更正GC 值不同于 50%。
这会产生以下图表:
I'm submitting a
ggplot2
attempt that is somewhat similar to the Leipzig/Berry solution above. This format is a little bit closer to the standard logogram.But my solution, and I think any
ggplot2
solution, still falls short becauseggplot2
does not offer control over the aspect ratio of plotting symbols. This is the core capability that (I think) is required for generating sequence logos and that is missing fromggplot2
.Also note: I used the data from Jeremy Leipzig's answer, but I did not do any corrections for small sample sizes or for %GC values different than 50%.
That produces this graph:
我已经实现了 Charles Berry 设计的替代方案,它解决了下面评论部分中令人厌烦的讨论的 seqLogos 的一些弱点。它使用ggplot2:
I have implemented an alternative designed by Charles Berry, which addresses some of the weaknesses of seqLogos discussed ad nauseam in the comment section below. It uses ggplot2:
就我而言,在 ggplot2 中没有直接的方法可以做到这一点。
不过,请查看 RWebLogo。这是我为 WebLogo python 库编写的 R 包装器。您可以从 CRAN 下载它,它托管在 github
简单示例:
有关更多选项,请参阅
?weblogo
或?plotlogo< /代码>
No direct way to do so in ggplot2, as far as I'm concerned.
However, check out RWebLogo. It's an R wrapper I have written for the WebLogo python library. You can download it from CRAN and it's hosted on github
Simple example:
For more options see
?weblogo
or?plotlogo
这是一个替代选项。 motiflogo 是 ggplot2 实现的主题(序列)标志的新表示形式。可以考虑两个方面。
Here is an alternative option. motiflogo is a new representation of motif (sequence) logo implemented by ggplot2. Two aspects could be considered.
现在有一个
gglogo
包(也在 CRAN 上,另一个令人惊叹的 ggplot2 Heike Hofmann 的扩展)。该包生成如下图:
该示例来自 https://github.com/heike/gglogo/blob/master/visual_test/logos.R 包装上有一份手稿:https://github.com/heike/logopaper/blob/master/logos.Rmd
There is now a
gglogo
package (also on CRAN, yet another amazing ggplot2 extension by Heike Hofmann).This package that produces plots like these:
The example is from https://github.com/heike/gglogo/blob/master/visual_test/logos.R and there's a manuscript on the package here: https://github.com/heike/logopaper/blob/master/logos.Rmd