我正在使用Biopython的Phylo软件包来创建系统发育树.
对于大树,我需要减少叶节点的字体大小.有人建议更改matplotlib.pyplot.rcParams ['font.size'],但这只允许我更改轴名称和标题,因为Phylo定义了自己的字体大小.我无法更改Phylo源代码,因为我在大学使用它.由于Phylo.draw()创建了自己的图形或轴,因此无法定义图形或轴.
有没有人对如何解决问题有任何建议,可能会拉伸y轴?
到目前为止,我使用以下代码生成树:
import matplotlib
import matplotlib.pyplot as plt
from Bio import Phylo
from cStringIO import StringIO
def plot_tree(treedata, output_file):
handle = StringIO(treedata) # parse the newick string
tree = Phylo.read(handle, "newick")
matplotlib.rc('font', size=6)
Phylo.draw(tree)
plt.savefig(output_file)
return
Run Code Online (Sandbox Code Playgroud)

我想使用该ape包在 R 中绘制两个相对的系统发育图。一棵树有 40 个节点,一棵树有 26 个节点:
library(ape)
tree1 <- rtree(40)
tree2 <- rtree(26)
Run Code Online (Sandbox Code Playgroud)
该cophyloplot函数使用指定的链接面对面地绘制这些图。
我在指定链接时遇到问题。
请注意,在我的实际nexus树文件中,提示标签是文本(如果需要,我不确定如何将它们更改为数字......)。
链接应如下所示:
如果,在tree1Nexus文件中,序列的尖端标签是1-40。在tree2Nexus 文件中,提示标签为 1-26。那么链接应该是:
a <- c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40)
b <- c(14,1,4,1,9,12,2,10,6,3,13,5,14,15,18,19,19,7,14,9,10,11,25,22,21,16,23,24,26,17,1,12,12,21,15,16,21,8,20,21)
association <- cbind(a, b)
Run Code Online (Sandbox Code Playgroud)
(即 中的序列 1 与 中tree1的序列 14 连接tree2)
所以,我用这样的东西来绘制树木:
cophyloplot(tree1, tree2, assoc=association,length.line=4, space=28, gap=10, rotate=TRUE)
Run Code Online (Sandbox Code Playgroud)
并计算距离矩阵:
dist.topo(tree1, tree2, method = "PH85")
Run Code Online (Sandbox Code Playgroud)
我不太确定我哪里出错了。任何帮助,将不胜感激!
我是 R 中 MCMCglmm 包的新手,一般来说,我对 glm 模型还是很陌生。我有一个物种特征数据集,以及它们是否被引入到它们的原生范围之外。
我想测试是否可以通过任何物种特征来解释被引入(作为二进制 0/1 响应变量)。我还想纠正物种之间的系统发育。
有人告诉我,对于二元响应,我可以使用 family =“threshold”,我应该将残差方差固定为 1。但是我在处理之前所需的其他参数时遇到了一些问题。
我已经为随机效应指定了 R 值,但是如果我指定 RI 还必须指定 G 并且我不清楚如何决定这个参数的值。我试过设置默认值,但收到错误消息:
Error in MCMCglmm(fixed, random = ~species, data = data2, family = "threshold", :
prior$G has the wrong number of structures
Run Code Online (Sandbox Code Playgroud)
我已经阅读了帮助小插曲和课程,但还没有找到一个二进制响应的例子,我不清楚如何决定先验值。这是我到目前为止:
fixed=Intro_binary ~ Trait1+ Trait2 + Trait3
Ainv=inverseA(redTree1)$Ainv
binary_model = MCMCglmm(fixed, random=~species, data = data, family = "threshold", ginverse=list(species=Ainv),
prior = list(
G = list(), #not sure about the parameters for random effects.
R = list(V = 1, fix …Run Code Online (Sandbox Code Playgroud) 以下是同一树的三个等价表示(系统发育).我试图找出一种算法来检查两个树表示是否相等.如果节点之间的父子关系相似,则树被定义为等效.
(Whale,(Seal,((Mouse,Rat),((((Carp,Loach),Frog),Chicken),Human))),Cow);
(Whale,(Seal,((Rat,Mouse),(Human,((Frog,(Loach,Carp)),Chicken)))),Cow);
((Seal,((Rat,Mouse),(Human,((Frog,(Loach,Carp)),Chicken)))), Cow, Whale);
Run Code Online (Sandbox Code Playgroud)
谁能建议一种方法?
我有一个基于 Jekyll 的 GitHub Pages 博客,使用稍微修改过的 Hyde 主题。它有四个使用“页面”布局的页面,可以使用永久侧边栏访问:博客、关于、项目和出版物。这些页面如下所示:

博客和项目页面具有分别使用“post”和“project”布局的子页面。他们工作了几个月没有问题,但昨天在发布新帖子后,我发现该主题不再适用于我的帖子或项目,即使它继续适用于我的页面。这是我的帖子的样子:

侧边栏和帖子的所有内容都在那里,并且呈现了 Markdown,但 Jekyll 主题似乎不起作用。我的项目页面看起来很相似。
我很困惑,因为我在大约两个月内没有更改任何与主题或布局相关的内容,而且我知道我的网站即使在几天前也能正常运行。这个问题似乎无处不在,我没有找到解决方案的运气。
这是该站点的存储库:https : //github.com/rgriff23/rgriff23.github.io
当使用 haploNet 包在单倍型网络上绘制一些图时,我使用了 Internet 上可用的脚本来执行此操作。不过我觉得有什么地方不对。该脚本以 woodmouse 示例的形式提供。我使用的代码是:
x <- read.dna(file="Masto.fasta",format="fasta")
h <- haplotype(x)
net <- haploNet(h)
plot(net)
plot(net, size = attr(net, "freq"), fast = TRUE)
plot(net, size = attr(net, "freq"))
plot(net, size=attr(net, "freq"), scale.ratio = 2, cex = 0.8
table(rownames(x))
ind.hap<-with(
stack(setNames(attr(h, "index"), rownames(h))),
table(hap=ind, pop=rownames(x)[values])
)
ind.hap
plot(net, size=attr(net, "freq"), scale.ratio = 2, cex = 0.8, pie=ind.hap)
legend(50,50, colnames(ind.hap), col=rainbow(ncol(ind.hap)), pch=20)
legend(x=7,y=10,c("Baeti ero","Felege weyni","Golgole naele","Hagare selam","Ruba feleg","Ziway"),c("red","yellow","green","turquoise","blue","magenta"))
Run Code Online (Sandbox Code Playgroud)
但是,在绘制 ind.hap 时,您会注意到某些行不在正确的位置。你可以在这里看到这个:
pop
hap Baetiero ETH022 ETH742 Felegeweyni Golgolenaele Rubafeleg
I …Run Code Online (Sandbox Code Playgroud) 我有一个类方法,其参数以下划线结尾,from_我用它autoclass来生成该类的文档。我希望参数from_在 Sphinx 文档中显示为普通文本,但目前它显示为超链接。
这是带有文档字符串的类方法的简化版本:
class Twilio:
def get_messages(to=None, from_=None):
"""
Get messages.
`Args:`
to: str
Receiver.
from_: str
Sender.
`Returns:`
Messages: dict
"""
return fetch_messages(to=to, from_=from_)
Run Code Online (Sandbox Code Playgroud)
我正在使用以下方法生成此类的文档:
.. autoclass :: Twilio
:inherited-members:
Run Code Online (Sandbox Code Playgroud)
问题可以在本页最底部的函数中看到,get_messages您可以看到它被格式化为超链接。
phylogeny ×6
r ×3
algorithm ×2
tree ×2
bayesian ×1
biopython ×1
dna-sequence ×1
draw ×1
genetics ×1
github-pages ×1
glm ×1
jekyll ×1
mixed-models ×1
python ×1
similarity ×1