我正在尝试使用该包绘制一些图形psmatrix
。除了左下方的圆圈外,输出与预期一致。起初我以为它是空节点(第 4 行,第 1 列),没有内容,但如果我删除边缘的代码,它就会消失。是什么导致了这个“故障”?
以下是代码:
\begin{center}
$
\psmatrix[colsep=1.5cm,rowsep=1cm,mnode=circle]
0 & 0 & 0 & 1 \\
1 & 1 & 1 & 0 \\
0 & 1 & 1 & 1 \\
& 0 & 1 & 0 \\
\ncline{->}{2,2}{1,2}
\ncline{->}{1,2}{1,1}
\ncline{->}{1,1}{2,1}
\ncline{->}{2,1}{3,1}
\ncline{->}{2,1}{3,1}
\ncline{->}{3,1}{3,2}
\ncline{->}{3,2}{4,2}
\ncline{->}{4,2}{4,3}
\ncline{->}{4,3}{4,4}
\ncline{->}{4,4}{3,4}
\ncline{->}{3,4}{2,4}
\ncline{->}{2,4}{1,4}
\ncline{->}{1,4}{1,3}
\ncline{->}{1,3}{2,3}
\ncline{->}{2,3}{3,3}%
\ncline[nodesep=5pt]{<->}{2,1}{2,2}
\ncline[nodesep=5pt]{<->}{2,2}{2,3}
\ncline[nodesep=5pt]{<->}{2,2}{3,2}
\ncline[nodesep=5pt]{<->}{3,2}{3,3}
\ncline[nodesep=5pt]{<->}{3,3}{4,3}
\ncline[nodesep=5pt]{<->}{3,3}{3,4}
\endpsmatrix$
\end{center}
以防万一,以下是序言:
\documentclass[a4paper, 11pt]{article}
\usepackage{graphicx}
\usepackage{graphics}
\usepackage{amsfonts}
\usepackage{color}
\usepackage{hyperref}
\usepackage{listings}
\usepackage{pstricks,pst-node,pst-tree,pstricks-add}
答案1
这是因为您用新的空行结束了 psmatrix。我借此机会删除了不必要的包:(graphics
加载graphicx
它)、color
(pstricks
加载xcolor
)pstricks
和pst-node
(pstricks-add
加载它们)。我添加auto-pst-pdf
到编译中pdflatex
。最后,我使用以下命令简化了代码foreach
:
\documentclass[a4paper, 11pt]{article}
\usepackage{graphicx}
\usepackage{amsfonts}
\usepackage{listings}
\usepackage{pst-tree,pstricks-add}
\usepackage{auto-pst-pdf} %% to compiile with pdflatex -shell-escape (TeX Live, MacTeX)
%% or pdflatex --enable-write18 (MiKTeX)
\usepackage{hyperref}
\begin{document}
\[
\begin{psmatrix}[colsep=1.5cm,rowsep=1cm,mnode=circle]
0 & 0 & 0 & 1 \\
1 & 1 & 1 & 0 \\
0 & 1 & 1 & 1 \\
& 0 & 1 & 0
%% horizontal arrows
\foreach \B/\E in{{1,2}/{1,1}, {1,4}/{1,3}, {3,1}/{3,2}, {4,2}/{4,3}, {4,3}/{4,4}}{\ncline[arrows=->, nodesep=5pt]{\B}{\E}}
%% vertical arrows
\foreach \B/\E in{{1,1}/{2,1}, {2,1}/{3,1}, {2,2}/{1,2}, {3,2}/{4,2}, {1,3}/{2,3}, {2,3}/{3,3}, {2,4}/{1,4}, {3,4}/{2,4}, {4,4}/{3,4}}%
{\ncline[arrows=->, nodesep=5pt]{\B}{\E}}
%% double arrows
\foreach \B/\E in{{2,1}/{2,2},{2,2}/{2,3},{2,2}/{3,2}, {3,2}/{3,3},{3,3}/{4,3},{3,3}/{3,4}}%
{\ncline[arrows=<->, nodesep=5pt]{\B}{\E}}
\end{psmatrix}
\]
\end{document}