这个问题给我带来了一些问题。首先,我试图在图表上放置标签,但没有成功。这是我尝试过的代码:
\documentclass[11pt,reqno]{amsbook}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\pgfmathdeclarefunction{gaussPDF}{2}{%
\pgfmathparse{1/(#2*sqrt(2*pi))*exp(-((x-#1)^2)/(2*#2^2))}%
}
\begin{tikzpicture}
\begin{axis}[every axis plot post/.append style={
mark=none,domain=-5:5,samples=50,smooth},
axis x line*=bottom,
xlabel=$x$,
xlabel style={at={(axis description cs:1,0)}},
ylabel=${f_X(x:c,d)}$,
axis y line*=middle,
enlargelimits=upper]
\addplot[red] {gaussPDF(0,1)};
\end{axis}
\end{tikzpicture}
\end{document}
xlabel 样式行直接取自此处类似问题的答案: Pgfplot 轴标签的定位。
我当前的问题是将 y 标签放在 y 轴的顶部,居中且水平。
我更根本的问题是,我拥有的 PGFplots 手册(v 1.4.1,2010)无法帮助我弄清楚这些事情。第 191 页提到了x/ylabel style ={}
但我找不到其中的键列表{}
或它们的含义,或者如何配置它们。链接中的答案没有说明“cs”的含义,但它确实表明其后的第一个数字将标签定位在原点(0)和轴末端(1)之间。第二个数字似乎是垂直位移。这是一种非常低效的弄清楚这些事情的方法,我似乎无法将 xlabel 样式行转换为我需要的 ylabel 样式行。
令人沮丧的是,显然很多人都知道这些事情,所以这是可以知道的。有人能给我指出一份更好的手册和/或一份所有具有相同命令的每个选项的键列表吗?我现在的工作需要大量使用 pgfplots,如果我一直在发布问题,这对我来说将是一场噩梦,也是对这种资源的巨大浪费。可能只是我一个人觉得这本手册很难理解,我真诚地感谢和感激作者。
编辑:添加输出的屏幕截图:
答案1
像这样?
\documentclass[border=3.141592]{standalone}
%\documentclass[11pt,reqno]{amsbook}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\pgfmathdeclarefunction{gaussPDF}{2}{%
\pgfmathparse{1/(#2*sqrt(2*pi))*exp(-((x-#1)^2)/(2*#2^2))}%
}
\begin{tikzpicture}
\begin{axis}[
axis lines=middle, % <---
%
xlabel=$x$, xlabel style={anchor=west},
ylabel=${f_X(x:c,d)}$, ylabel style={anchor=south}, % <---
enlargelimits=upper,
%
mark=none, domain=-5:5, samples=51,
]
\addplot [thick, red] {gaussPDF(0,1)};
\end{axis}
\end{tikzpicture}
\end{document}
(这里没什么可偷的,你可以在包装手册中找到所有内容......例如参见此解决方案。