自动机边缘向左直行的箭头无法正常显示

自动机边缘向左直行的箭头无法正常显示

简单地说,如果我使用以下代码创建一个自动机:

\begin{tikzpicture} [node distance = 2cm, on grid]
 
\node (q0) [state,
    initial,
    initial left,
    initial distance=1.5cm,
    initial text=Start here
] {$q_0$};
 
\end{tikzpicture}

我得到了正确的预期输出:

但如果我有从右边进来的箭头:

\begin{tikzpicture} [node distance = 2cm, on grid]
 
\node (q0) [state,
    initial,
    initial right,
    initial distance=1.5cm,
    initial text=Start here
] {$q_0$};
 
\end{tikzpicture}

我明白了:

事实上,任何指向左侧的直线箭头都会像这样错误地显示。有什么建议可以解决这个问题吗?

答案1

您得到的不理想的输出是由于您没有透露的某些因素,可能是某些\tikzset不应该存在的命令。此代码说明问题不是先验存在的,而可能是由某些不适当的全局设置引起的。

\documentclass[tikz,border=2mm]{standalone}
\usetikzlibrary{automata,positioning}
\begin{document}
\begin{tikzpicture}[node distance = 2cm, on grid]
 
\node (q0) [state,
    initial,
    initial left,
    initial distance=1.5cm,
    initial text=Start here
] {$q_0$};
 
\end{tikzpicture}

\begin{tikzpicture}[node distance = 2cm, on grid]
 
\node (q0) [state,
    initial,
    initial right,
    initial distance=1.5cm,
    initial text=Start here
] {$q_0$};
 
\end{tikzpicture}

\tikzset{every picture/.append style={xscale=-1}}

\begin{tikzpicture}[node distance = 2cm, on grid]
 
\node (q0) [state,
    initial,
    initial right,
    initial distance=1.5cm,
    initial text=Start here
] {$q_0$};
 
\end{tikzpicture}
\end{document}

在此处输入图片描述

正如您所见,最后一张图片很乱,但只有在调用某个全局变量之后才会\tikzset出现这种情况。

相关内容