使用 \tikzset 重新定義基底向量後無法開始繪圖

使用 \tikzset 重新定義基底向量後無法開始繪圖

我正在繪製幾張 TikZ 圖片,其中我希望基礎向量從通常的定義旋轉,所以我使用了命令

\tikzset{x={(0cm,-1cm)}, y={(1cm,0cm)}}

在我的序言中。但是,這樣做後,我無法建立圖形(我收到以下內容的未定義控制序列錯誤訊息\begin{figure})。基向量的任何完全重新定義都會導致相同的問題。這是一個 MWE:

\documentclass{article}

\usepackage{tikz}
\tikzset{x={(1cm,0cm)},y={(0cm,1cm)}}

\begin{document}

\begin{figure}
text
\end{figure}

\end{document}

如果我僅使用例如 重新縮放,則不會收到錯誤\tikzset{x=-1}

我目前的解決方法是將\tikzset命令放入每個 TikZ 圖片中。

是什麼導致了這個錯誤?有沒有辦法在全域範圍內重新定義基底向量來避免這種情況?

答案1

將此類樣式套用到每張圖片的正確方法是使用 key every picture。在你的情況下你可以說

\tikzset{every picture/.append style={x={(0cm,-1cm)}, y={(1cm,0cm)}}}

除非您進行了其他一些轉換,否則應該具有相同的效果

\tikzset{every picture/.append style={rotate=-90}}

第二種變體具有可應用於其他轉換之上的輕微優勢。

相關內容