我不确定我的标题是否表达出了我的意思,但基本上我正在使用 matlab2tikz 为我生成一些图,并且想知道如何在 .tikz 文件之外进行一些修改。
例如 matlab2tikz 的 .tikz 将如下所示:
\begin{tikzpicture}
\begin{axis}[%
width=4.52083333333333in,
height=3.565625in,
scale only axis,
xmin=1, xmax=511, xlabel={$\text{q (um}^\text{-}\text{1)}$},
ymin=0.5, ymax=1, ylabel={Normalized RMS error}]
\addplot [color=blue,solid,line width=1.0pt,forget plot]
table[row sep=crcr]{
1 -57.943745 \\
2 .more data
3 .more data
};
\end{axis}
\end{tikzpicture}%
我正在导入和缩放文档中的文件,如下所示(复制自matlab2tikz 的尺寸太大,并且对齐图轴):
\begin{table}[h!]
\begin{center}
\begin{tabular}{ c p{6cm} p{6cm} }
\toprule
A & B & C \\
\cmidrule(r){1-1}\cmidrule(lr){2-2}\cmidrule(l){3-3}
text
&
\scalebox{0.4}{\input{images/exp5nrmse.tikz}}
\scalebox{0.4}{\input{images/exp5diff.tikz}}
\scalebox{0.4}{\input{images/exp5diff.tikz}}]
&
\scalebox{0.4}{\input{images/exp5nrmse.tikz}}
\\ \bottomrule
\end{tabular}
\caption{DDM Results}
\label{tbl:myLboro}
\end{center}
\end{table}
是否可以更改图片宽度、高度、x 和 y 标签位置等内容,而无需编辑实际的 .tikz 文件。我之所以问这个问题,是因为所呈现的代码的图形没有对齐,我希望永远不必触碰 .tikz 文件的内容来解决这个问题。以下是问题的图片(我在 paint 中添加的红线显示了错位):
谢谢你的时间。
答案1
您始终可以定义样式。
有很多款式可供选择,其中包括
every axis post
:允许在文件\begin{axis}
中设置后覆盖所有选项.tikz
every tikzpicture
:允许为每个 tikz 图片定义默认选项。有用的键可以是trim axis left
、trim axis right
和baseline
。请参阅pgfplots
手册的“对齐选项”部分,了解如何使用它们来解决图中的对齐问题。
这些图将应用于所有输入图片,无需对其进行编辑。
但是,如果所有文件都自行定义,那么\pgfplotsset{every axis post/.style={width=4cm}}
在序言中分配可能会让人感到困惑……您确定不想编辑这些文件吗?或许可以添加一些标准选项?.tikz
width
matlab2tikz
请注意,最佳做法是编写
\begin{axis}[super style]
每当你启动一个轴时,结合一些序言语句\pgfplotsset{super style/.style={title=My Title}}
。显然,这需要修改你的.tikz
文件。