氨基酸与 chemfig 结合,一些键的位置错误

氨基酸与 chemfig 结合,一些键的位置错误

组氨酸 脯氨酸

我为我的论文制作了所有氨基酸,但脯氨酸和组氨酸一直困扰着我。我想将组氨酸中现在从 H 到 H+ 的 -= 键从 N 放到 N,将脯氨酸中从 C 到 H2 的 - 键从 C 放到 C...这是我使用的代码:

\chemfig{C([:0]-C(=[:30]O)(-[:-30]O^{-}))([:180]-H_{3}
N^{+})([:-90]-H)([:90]-CH_{2}([:90]-([:60]*5(-NH-=NH^{+}-=))))}

\chemfig{C([:0]-C(=[:30]O)(-[:-30]O^{-}))([:-90]-H)*5([:135]-CH_2-CH_2-H_2C-  H_{2}N^{+}-)}

答案1

所有的chemfig的债券有可选参数,可以接受以下输入:

<bond symb>[<angle spec>,<length factor>,<dpt atom>,<arr atom>,<tikz spec>]

第三个<dpt atom>, 和第四个<arr atom>, 是这里的重要元素:它们指定键从原子组中的哪个原子出发,以及键到达原子组中的哪个原子。这在第二部分第 5 节中进行了描述手动的出发和到达原子)。这些参数是整数,表示相应原子在组中的位置(从左侧开始计数)。如果未指定,则chemfig根据键离开或到达的角度确定原子。指定的原子必须存在,否则会引发错误。下图取自文档:

在此处输入图片描述

将其应用到您的代码中我们得到:

\documentclass{article}
\usepackage{chemfig}
\begin{document}

\chemfig{
  C
   ([:0]-C(=[:30]O)(-[:-30]O^{-}))
   ([:180]-H_{3}N^{+})
   ([:-90]-H)
   ([:90]-CH_{2}([:90]-([:60]*5(-NH-[,,1]=NH^{+}-=))))% <= NH-[,,1] : depart from `N'
}

\chemfig{
  C
   ([:0]-C(=[:30]O)(-[:-30]O^{-}))
   ([:-90]-H)
 *5([:135]-CH_2-CH_2-H_2C-[,,,2]H_{2}N^{+}-)% <= C-[,,,2] : arrive at `N'
}

\end{document}

在此处输入图片描述


您可以进行进一步的调整来改善分子的外观:

  • 在环中使用\chemabove{<atom>}{<above>}mathtools'\mathrlap{<stuff>}就环而言,获得单个原子;环看起来会更均匀。
  • O|^{-}在羧基中使用(注意|);这将确保在放置键时不考虑上标的额外高度O;分子中还有其他地方也可以使用这种语法。请参阅第三部分第 1 节,分离原子,请参阅手册中的详情。

将其应用到您的示例中,结果将是:

在此处输入图片描述

\documentclass{article}
\usepackage{chemfig}
\usepackage{mathtools}% provides \mathrlap
\begin{document}

\chemfig{
  H_{3}\chemabove{N}{\quad\scriptstyle+}-
  C
   ([:-90]-H)
   ([:90]
     -CH_{2}-
     ([:90]*5(-NH-[,,1]=\chemabove{\chemabove{N}{H}}{\hskip1.5em\scriptstyle+}-=))
   )
  -C(=[:45]O)(-[:-45]O|^{-})
}
\qquad
\chemfig{
  H-[2]
  C
  (-C(=[:45]O)(-[:-45]O|^{-}))
 *5([:135]-C|H_2-\chemabove{C}{H\mathrlap{_2}}-H_2|C-[,,,2]H_{2}|\chemabove{N}{\quad\scriptstyle+}-)
}

\end{document}

相关内容