我知道这有点本地化,但请耐心等待,因为我需要知道如何做到这一点。这是我要做的事情的图片:
所以正如你所看到的,我必须画出这些线。我知道如何添加文字以及如何旋转它们(\turn),但是如何正确定位第二行文本?
更新:我还需要这样的双箭头:
答案1
因为您似乎在等待一个tikz-cd
-solution(感谢 Bernard 从您的绘图中输入所有公式):
% arara: pdflatex
\documentclass{article}
\usepackage{tikz-cd}
\usepackage{mhchem}
\begin{document}
\begin{tikzcd}[row sep=0.6cm]
\ce{Cr} \arrow{r}{1} & \ce{Cr2O3} \arrow{r} \arrow{dr}[swap]{5} & \ce{CrCl3} \arrow{r}{3} & \ce{Cr(OH)3} \arrow{dl} \arrow{r}{4} \arrow{d}{7} & \ce{Cr2O3}\\
& &\ce{KCrO2} \arrow{r}{6} & \ce{Cr(NO3)3} &
\end{tikzcd}
\end{document}
如果要将数字 5 旋转到与箭头相同的角度,可以这样写\arrow{dr}[swap,sloped]{5}
。
编辑:
对于第二张图片:
\documentclass{article}
\usepackage{tikz-cd}
\usepackage{mhchem}
\begin{document}
\[
\begin{tikzcd}
\ce{Al2(SO4)3} \arrow[shift left]{r}{2} & \ce{Al(OH)3} \arrow[shift left]{l}{7}
\end{tikzcd}
\]
\end{document}
答案2
使用mhchem
和pst-node
包,这很容易。请注意,该pdf
选项允许您使用--enable-write18(用于 MiKTeX)开关pdflatex
进行编译。-shell-escape (for TeX Live or MacTeX) or
\documentclass[pdf]{report}
\usepackage{pst-node}
\usepackage{mhchem}
\begin{document}
\[ \psset{arrows = ->, nodesep = 3pt, labelsep = 3pt, colsep = 1.2cm, rowsep = 1.2cm, npos = 0.45, arrowinset=0.2}
\begin{psmatrix}
\ce{Cr} & \ce{Cr2O3} & \ce{CrCl3} &\ce{Cr(OH)3} & \ce{Cr2O3}\\
& &\ce{KCrO2} & \ce{Cr(NO3)3}\\[0.5cm]
\ce{Al2(SO4)3} & \ce{Al(OH)3}
\ncline{1,1}{1,2}\naput{1} \ncline{1,2}{1,3} \ncline{1,3}{1,4}\naput{3}\ncline{1,4}{1,5}\naput{4}
\ncline{1,2}{2,3}\naput[npos=0.5]{5}\ncline{1,4}{2,3}\ncline{1,4}{2,4}\naput{7}
\ncline{2,3}{2,4}\naput{6}
%
\psset{tpos = 0.52}
\ncline[offset=0.667ex]{3,1}{3,2}\taput{2}\ncline[offset=0.667ex]{3,2}{3,1}\tbput{7}
\end{psmatrix} \]
\end{document}