到目前为止,我曾经gnuplot
为我的 LaTeX 文档绘制图表。但是,有时它并不那么令人满意,而且我还没有找到制作图表的最佳解决方案。由于我pgfplots
时不时在 Tex.SE 上阅读有关的内容,所以我想尝试一下。语法对于初学者来说相当困难,所以我无法弄清楚如何执行以下操作。考虑这个 MWE
\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\pagestyle{empty}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
grid=both,
grid style={line width=0.2pt, dashed, color=black},
xlabel=xlabel,
ylabel=ylabel]
\addplot[color=red,mark=x] coordinates {
(2,-2.8559703)
(3,-3.5301677)
(4,-4.3050655)
(5,-5.1413136)
(6,-6.0322865)
(7,-6.9675052)
(8,-7.9377747)
};
\end{axis}
\end{tikzpicture}
\end{document}
我从pgfplots
手册中复制了大部分内容。我想在$x$
和$y$
轴标签上添加小箭头,如下图所示
我用 制作的gnuplot
。在 gnuplot 中,我在 TikZ 的帮助下添加了小箭头,我希望我的 pgfplot 具有非常相似的样式(箭头、网格线等)。
我尝试按如下方式将箭头添加到轴上:
xlabel=\tikz{\draw[>=latex,->,line width=0.2mm] node[left] {Gas / $\mathrm{\frac{kg \cdot J}{m^2}}$} (0,0) -- ++(0.5,0)},
但是,这根本不起作用。我应该如何更改我的代码?
答案1
您的建议嵌套了tikzpicture
s,应避免这种情况。尝试
\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
grid=both,
grid style={line width=0.2pt, dashed, color=black},
xlabel=xlabel, xlabel style={alias=aux},
ylabel=ylabel, ylabel style={alias=auy}]
\addplot[color=red,mark=x] coordinates {
(2,-2.8559703)
(3,-3.5301677)
(4,-4.3050655)
(5,-5.1413136)
(6,-6.0322865)
(7,-6.9675052)
(8,-7.9377747)
};
\end{axis}
\draw[-latex] (auy.east) -- ++(0,0.5);
\draw[-latex] ([xshift=1mm]aux.east) -- ++(0.8,0);
\end{tikzpicture}
\end{document}
east
相反。请注意,如果您旋转 y 标签,等的含义north
将发生变化,然后您可以\draw[-latex] (aux.north) -- ++(0,0.5);
改为执行类似操作。还请注意,在轴“完成”后,有一个current axis
节点,您可以使用其锚点,以及 等xticklabel cs
(请参阅 pgfplots 手册第 4.9 节)。