我在 .tikz 檔案中有一些 pgfplot 圖表,我想為它們定義一個自訂樣式,僅覆蓋一些條目,並使用 .tikz 檔案中的內容來處理其餘的內容。
例子:
在我的 .tikz 檔案中
\begin{axis}[inTable]
在我的文件中,我將所有 [inTable] 圖表定義為:
\pgfplotsset{inTable/.style={
width=4.5cm,
height=4.5cm,
scale only axis,
xmin=1,
xmax=511,
xlabel={$q (\mu m^{-1})$},
ymin=0.5,
ymax=1,
ylabel={ylabel}
},
inTable/.belongs to family=/pgfplots/scale,
}
但我並不是所有具有[inTable]
樣式的圖表都必須具有相同的標籤和 x min、x max 等。我嘗試將其餘部分放回 .tikz 檔案中,例如
\begin{axis}[inTable]
scale only axis,
xmin=1,
xmax=511,
xlabel={$q (\mu m^{-1})$},
ymin=0.5,
ymax=1,
ylabel={y label}
但它似乎只採取什麼\pgfplotsset{inTable/.style={
我該如何混合搭配?我希望這個問題有意義。
謝謝
答案1
看來您過早關閉了 axis 環境的可選參數;嘗試
\begin{axis}[myTable,scale only axis,..., ylabel={y label}]
這是一個完整的 MWE 可供使用。
% arara: pdflatex
% !arara: indent: {overwrite: yes}
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{inTable/.style={
width=4.5cm,
height=4.5cm,
scale only axis,
xmin=1,
xmax=511,
xlabel={$q (\mu m^{-1})$},
ymin=0.5,
ymax=1,
ylabel={ylabel}
},
inTable/.belongs to family=/pgfplots/scale,
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[inTable]
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[inTable,
scale only axis,
xmin=-20,
xmax=400,
xlabel={different},
ymin=-1.5,
ymax=10,
ylabel={y label}]
\end{axis}
\end{tikzpicture}
\end{document}