跳至内容

庞氏方格计算器 | 预测遗传遗传模式

庞氏方格计算器根据孟德尔遗传学原理,为单杂交和二杂交组合计算子代的基因型比率与表型比率,涵盖显性、隐性及纯合子、杂合子等各种遗传组合情况。用户只需输入父母双方的等位基因,工具便会自动生成完整方格,并列出各类后代性状出现的具体概率,适合遗传学作业和动植物育种规划参考使用。

庞氏方格计算器

预测遗传杂交的基因型和表现型比例。即时计算单基因和双基因遗传模式。

使用标准符号输入父代基因型(例如,单基因杂交使用Aa,双基因杂交使用AaBb)。

示例:

庞氏方格

显示遗传组合的庞氏表
亲本配子Aa
A
AA
A
Aa
A
a
Aa
A
aa
a

表现型比例

A: 3/4, a: 1/4

理解庞氏方格

庞氏方格是一种帮助预测后代不同基因型概率的图表。

大写字母代表显性等位基因,小写字母代表隐性等位基因。

表现型是基因型的物理表达。显性等位基因将在表现型中掩盖隐性等位基因。

加载计算器...
📚

文档

什么是潘尼特方格?

潘尼特方格是一种网格,用于根据双亲预测子代的遗传组成。英国遗传学家雷金纳德·潘尼特于1905年提出了这一方法,用于讲授孟德尔的遗传定律。潘尼特方格计算器自动完成同样的工作:输入双亲各自的基因型后,它会在网格中列出所有可能的子代基因型及其表现型,然后报告每种表现型出现的频率。

下面的工具处理两类杂交。单性状杂交追踪一个基因,例如花色(输入示例:Aa)。双性状杂交同时追踪两个基因,例如种子形状和种子颜色(输入示例:AaBb)。

如何使用此计算器

在每个双亲输入框中输入一个基因型。计算器接受两种形式:

  • 一因子杂交使用两个字母,且无论大小写都必须是同一个字母:Aa、AA、aa。
  • 二因子杂交使用四个字母,即由两个不同字母组成的两对字母:AaBb、AAbb、aabb。

双亲必须使用相同的形式和相同的基因字母。Aa与AaBb杂交会因杂交类型不匹配而被拒绝,Aa与Bb杂交则会因两个输入框描述的是不同基因而被拒绝。其他形式,例如A或Ab,会被标记为无效基因型。

结果是一个网格。每个单元格包含子代基因型,并将显性等位基因写在前面;其下方显示表现型。在网格下方,计算器以单元格数量占总数的形式列出表现型比例,例如,两个杂合子进行一因子杂交时为A: 3/4, a: 1/4。显性表现型以大写基因字母表示,隐性表现型以小写字母表示,因此二因子杂交会报告AB、Ab、aB和ab。

关键术语

  • 基因型:生物体的遗传组成,写成字母对,例如Aa或BB。
  • 表现型:由基因型产生的可观察性状,例如植物的高茎或矮茎。
  • 等位基因:基因的一种形式。显性等位基因用大写字母表示(A);隐性等位基因用小写字母表示(a)。
  • 纯合子:某个基因的两个等位基因相同,例如AA或aa。
  • 杂合子:两个等位基因不同,例如Aa。
  • 配子:携带每对基因中仅一个等位基因的生殖细胞(卵细胞或精子)。

只要显性等位基因存在,它就会决定表现型。只有在两个拷贝都是隐性等位基因时,隐性等位基因才会在表现型中显现,例如aa。

如何计算潘尼特方格

  1. 列出每个双亲能够传递的等位基因或配子。
    • 基因型为Aa的一因子杂交双亲可以传递A或a。
    • 基因型为AaBb的二因子杂交双亲可以传递四种可能的配子组合:AB、Ab、aB或ab。
  2. 画出网格。将一方双亲的配子放在顶部,另一方双亲的配子沿侧边排列。
  3. 将所在行的配子与所在列的配子组合,填入每个单元格。按照惯例,显性(大写)等位基因写在前面,因此将a与A组合时应写成Aa,而不是aA。
  4. 读取每个单元格的表现型:含有至少一个显性等位基因的基因型表现出显性性状;含有两个隐性等位基因的基因型表现出隐性性状。
  5. 统计表现出每种表现型的单元格数量,并将其化简为比例。

示例:一因子杂交(Aa × Aa)

两个双亲都是杂合子,因此各自都可以传递A或a。

Aa
AAAAa
aAaaa

四个单元格产生三种基因型:AA(1个单元格)、Aa(2个单元格)和aa(1个单元格)。因此基因型比例为1:2:1。

就表现型而言,AA和Aa都表现出显性性状,而只有aa表现出隐性性状。因此,显性性状有3个单元格,占4个单元格;隐性性状有1个单元格,占4个单元格,得到经典的3:1表现型比例。计算器将其写成A: 3/4, a: 1/4。

示例:二因子杂交(AaBb × AaBb)

每个双亲都能产生四种配子:AB、Ab、aB和ab。两个双亲各有四种配子时,杂交会产生一个4×4网格,共有16个单元格。按表现型分类,16个单元格分为:

  • 9个单元格同时具有两个显性性状(A_B_),计算器将其标记为AB
  • 3个单元格具有显性 A 性状和隐性 b 性状(A_bb),标记为Ab
  • 3个单元格具有隐性 a 性状和显性 B 性状(aaB_),标记为aB
  • 1个单元格同时具有两个隐性性状(aabb),标记为ab

这就是两对基因均为杂合的个体之间进行双性状杂交时的标准9:3:3:1表现型比例。

常见的一因子杂交比例

杂交组合基因型比例表现型比例
AA × AA100% AA100% 显性
AA × aa100% Aa100% 显性
AA × Aa50% AA、50% Aa100% 显性
Aa × Aa25% AA、50% Aa、25% aa3:1,显性性状与隐性性状
Aa × aa50% Aa、50% aa1:1,显性性状与隐性性状
aa × aa100% aa100% 隐性

这种模式为何成立

上述比例来自格雷戈尔·孟德尔在1850年代和1860年代培育豌豆后提出的两条规律。

分离定律:双亲形成配子时,某个基因的两个等位基因会彼此分离。每个配子只携带其中一个。基因型为Aa的双亲会产生一半为A、一半为a的配子。

自由组合定律:对于位于不同染色体上的基因,一个基因传递的等位基因不会影响另一个基因传递哪一个等位基因。因此,二因子杂交可以视为两个彼此独立的一因子杂交组合而成。对于位于同一条染色体且彼此接近的基因,这一规律并不成立,因为它们往往会成对遗传。这是基本潘尼特方格方法的已知局限。

潘尼特方格的局限

潘尼特方格适用于具有简单显隐性遗传的单基因,但有几种情况不属于这一模型。

  • 多基因性状:人的身高或肤色等性状同时取决于许多基因。构建足以模拟这些性状的网格并不实际。
  • 不完全显性:当两个等位基因都不能完全占优势时,杂合子会表现出混合性状。红色和白色金鱼草杂交会产生粉色子代,3:1比例会变为1:2:1。
  • 连锁基因:同一条染色体上彼此接近的基因通常会一起遗传,这会破坏自由组合的假设。
  • 伴性性状:这类性状需要将 X 和 Y 染色体写入基因型,例如携带者母亲的基因型为XᴴXʰ。这种记法不属于本计算器接受的普通字母对。
  • 致死等位基因和可变外显率:某些等位基因组合无法存活,或者某个基因并不总是产生预期性状;这两种情况都会使简单比例发生偏移。

对于涉及三个或更多基因的杂交,或具有上述复杂模式的情况,遗传学家通常使用概率法则、系谱图或群体遗传学模型,而不是单个网格。

潘尼特方格的应用

生物学课程使用潘尼特方格使遗传过程直观可见:两个携带者双亲(Ss × Ss)的子代有25%的概率患隐性遗传病,这一事实通过网格即可一目了然。动物和植物育种者也使用同样的方法,在杂交前估计子代性状,例如预测一窝幼犬的毛色比例。遗传咨询师使用简化的潘尼特方格向患者解释遗传风险,保护项目则利用它为濒危物种规划配对,同时限制近亲繁殖。

历史

雷金纳德·克伦达尔·潘尼特约在1905年设计了这种网格,当时他正与威廉·贝特森共事。贝特森是倡导格雷戈尔·孟德尔当时重新受到关注的研究成果的科学家之一。孟德尔于1865年发表了关于豌豆的研究结果,但这些成果基本上被忽视,直到1900年,三位研究人员才各自独立地重新发现它们:雨果·德弗里斯、卡尔·科伦斯和埃里希·冯·切尔马克。潘尼特于1905年出版了教科书《孟德尔主义》,其后续版本帮助传播了孟德尔定律以及如今以潘尼特命名的网格。

常见问题

潘尼特方格显示什么? 它显示两个双亲能够传递给子代的所有等位基因组合,以及由此产生的基因型和表现型。

基因型和表现型有什么区别? 基因型是遗传密码,以Aa这样的字母表示。表现型是可以观察到的性状,例如花色。如果某性状为显性,不同的基因型AA和Aa可能产生相同的表现型。

为什么3:1比例如此常见? 当两个杂合子双亲(Aa × Aa)进行杂交时,预期的表现型分配就是这一比例。它是许多子代中的概率,并不能保证每一窝子代都如此。抛两枚硬币也不能保证每次都出现一个正面和一个反面。

潘尼特方格能确定性地预测真实孩子的性状吗? 不能。它给出的是概率,而不是结果。一对双亲的每个孩子出现某性状的概率为50%时,仍可能有几个孩子都具有该性状,也可能一个都没有。

如何处理多于两个基因的情况? 三基因网格需要64个单元格,绘制起来不切实际。遗传学家通常分别计算每个基因的概率,然后将相互独立的概率相乘。

测交如何使用? 测交可以揭示表现出显性性状的生物是纯合子(AA)还是杂合子(Aa)。让它与纯合隐性(aa)双亲杂交:如果该双亲是AA,子代全部表现显性;如果是Aa,显性与隐性子代的比例则为1:1。

用代码构建潘尼特方格

核心步骤是:将每个基因型拆分为等位基因,生成每个双亲能够产生的所有配子,然后逐对组合配子,并始终将显性等位基因写在前面。下面的 Python 函数采用了这种方法:

1def generate_monohybrid_punnett_square(parent1, parent2):
2    p1_alleles = list(parent1)
3    p2_alleles = list(parent2)
4
5    def combine(a, b):
6        # Dominant (uppercase) allele goes first
7        pair = sorted([a, b], key=lambda x: x.islower())
8        return ''.join(pair)
9
10    return [[combine(a1, a2) for a2 in p2_alleles] for a1 in p1_alleles]
11
12square = generate_monohybrid_punnett_square('Aa', 'Aa')
13for row in square:
14    print(row)
15# Output: ['AA', 'Aa']
16#         ['Aa', 'aa']
17

key=lambda x: x.islower()这一行将大写字母(显性)排在小写字母(隐性)之前,因此无论等位基因来自哪一方双亲,sorted()都会始终将显性等位基因放在前面。

参考文献

  1. [美国国立人类基因组研究所——潘尼特方格](https://www.genome.gov/genetics-glossary/Punnett-Square)
  2. [《自然》教育——格雷戈尔·孟德尔与遗传原理](https://www.nature.com/scitable/topicpage/gregor-mendel-and-the-principles-of-inheritance-593/)
  3. [可汗学院——潘尼特方格与概率](https://www.khanacademy.org/science/biology/classical-genetics/mendelian--genetics/a/punnett-squares-and-probability)
  4. Pierce, B.A.(2017)。《遗传学:概念方法》(第6版)。W.H. Freeman。
  5. Punnett, R.C.(1905)。《孟德尔主义》。Macmillan and Company。