我如何才能将额外的 y 刻度显示为 y 轴上的其他标签? 这是我的 MWE,我试过了
scaled extra y ticks=real:1000
在代码中注释掉但没有成功。
\documentclass{standalone}
\usepackage{pgfplots}
%============================================================
\begin{document}
\begin{tikzpicture}
\begin{axis}[
area style,
/pgf/number format/1000 sep=,
scaled y ticks=real:1000,
ytick scale label code/.code={kEUR},
%scaled extra y ticks=real:1000,
extra y ticks={3311361},
extra y tick style={grid=major,grid style={color=red},tick label style={color=red}},
extra x ticks={8.77,15},
extra x tick style={grid=major,color=red,grid style={color=red},
},
]
\addplot[color=violet,fill=violet!20] table[x=X,y=Y]
{X Y
0 -5957500
1 -5191175
2 -4448748
3 -3729541
4 -3032897
5 -2358177
6 -1704762
7 -1072048
8 -459449
9 133602
10 707662
11 1263267
12 1800939
13 2321185
14 2824499
15 3311361
16 3782234
17 4237573
18 4677817
19 5103392
20 5514715
}
\closedcycle ;
\end{axis}
\end{tikzpicture}
\end{document}
答案1
您必须在 中定义额外的刻度缩放extra y tick style={}
。由于乘数也会被打印出来(\cdot 1000
红色),所以我插入了 ,ytick scale label code/.code={}
但不会打印任何内容。
% arara: pdflatex
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
area style,
/pgf/number format/1000 sep=,
scaled y ticks=real:1000,
ytick scale label code/.code={kEUR},
extra y ticks={3311361},
extra y tick style={scaled y ticks=real:1000,ytick scale label code/.code={},grid=major,grid style={color=red},tick label style={color=red}},
extra x ticks={8.77,15},
extra x tick style={grid=major,color=red,grid style={color=red},
},
]
\addplot[color=violet,fill=violet!20] table[x=X,y=Y]
{X Y
0 -5957500
1 -5191175
2 -4448748
3 -3729541
4 -3032897
5 -2358177
6 -1704762
7 -1072048
8 -459449
9 133602
10 707662
11 1263267
12 1800939
13 2321185
14 2824499
15 3311361
16 3782234
17 4237573
18 4677817
19 5103392
20 5514715
}
\closedcycle ;
\end{axis}
\end{tikzpicture}
\end{document}