如果我运行下面显示的代码,y 轴的指数乘数会略微被截断。我该如何解决这个问题?
谢谢。
\RequirePackage{luatex85}
\documentclass[11pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.14}
\usepackage{lmodern}
\usepackage{amsmath}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
width=7cm,
height=6cm,
xlabel={$x$},
ylabel={$y$},
ylabel shift = -3.0 pt,
grid=major,
every axis plot/.append style={line width=0.7pt},
legend pos=north east,
legend entries={$test$},
xmin=0, xmax=2,
ymin=-0.00000006, ymax=0.00000001,
ytick={-0.00000006,-0.00000005,-0.00000004,-0.00000003,-0.00000002,-0.00000001,0,0.00000001},
]
\addplot[color=red,mark=x] coordinates {
(0,-0.000000028559703)
(1,-0.000000035301677)
(2,-0.000000043050655)
(3,-0.000000051413136)
(4,-0.000000060322865)
(5,-0.000000069675052)
(6,-0.000000079377747) };
\end{axis}
\end{tikzpicture}
\end{document}
答案1
这可能根本不是pgfplots
' 的错。字符本身有一个边界框,字形稍微突出于该框,如下例所示:
\documentclass{article}
\begin{document}
\setlength\fboxsep{0pt}\setlength{\fboxrule}{0.1pt}
\fbox{$8$}
\end{document}
评论中提到了几种可能的解决方法。关于border
的选项standalone
,有人可能会提到可以为每边设置单独的值,因此,如果要在顶部添加 0.5pt,请使用
\documentclass[11pt,border={0pt 0pt 0pt 0.5pt}]{standalone}
这些值分别表示左、右、下和上。
另一种方法是添加
every y tick scale label/.append style={font=\strut}
到axis
选项中。这将有效地\strut
在包含乘数的节点中添加一个,从而稍微增加文本高度。
\RequirePackage{luatex85}
\documentclass[11pt,convert]{standalone}
%\documentclass[11pt,border={0pt 0pt 0pt 0.5pt}]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.14}
\usepackage{lmodern}
\usepackage{amsmath}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
width=7cm,
height=6cm,
xlabel={$x$},
ylabel={$y$},
ylabel shift = -3.0 pt,
grid=major,
every axis plot/.append style={line width=0.7pt},
legend pos=north east,
legend entries={test},
xmin=0, xmax=2,
ymin=-0.00000006, ymax=0.00000001,
ytick={-0.00000006,-0.00000005,-0.00000004,-0.00000003,-0.00000002,-0.00000001,0,0.00000001},
every y tick scale label/.append style={font=\strut}
]
\addplot[color=red,mark=x] coordinates {
(0,-0.000000028559703)
(1,-0.000000035301677)
(2,-0.000000043050655)
(3,-0.000000051413136)
(4,-0.000000060322865)
(5,-0.000000069675052)
(6,-0.000000079377747) };
\end{axis}
\end{tikzpicture}
\end{document}