为什么刻度刻度标签放置不正确?

为什么刻度刻度标签放置不正确?

请参阅以下由 创建的示例matlab2tikz。我删除了很多行以简化问题。

\begin{tikzpicture}
\begin{axis}[%
width=0.99266\figurewidth,
height=\figureheight,
xmin=0,
xmax=120,
ymin=-100000,
ymax=50000,
]
\addplot [color=red,solid,line width=2.0pt]
  table[row sep=crcr]{%
 1  -86255.5783320323\\
2   -74068.0571042609\\
4   -57710.3221301868\\
 105    10939.2665934164\\
 106    11754.7103271752\\
 110    15903.9005100491\\
111 17245.0672141506\\
};  
\addlegendentry{A21};
\end{axis}
\end{tikzpicture}%

这将创建下面的图片:

为什么放置10^5不正确?到目前为止,参考资料中没有任何内容可以帮助...

Package: pgfplots 2014/08/04 v1.11 Data Visualization (1.11-3-g4c99d7a)

TeXLive 2014。

编辑:这里现在是 MWE。

\documentclass{scrartcl}
\usepackage{pgfplots}
\pgfplotsset{compat=newest,
  ticklabel style={% gilt für x und y
/pgf/number format/.cd,
use comma,% Komma als Dezimaltrenner
1000 sep = {}% keine Tausendertrennung 
  }}
\begin{document} 
\begin{figure}
\input{2nd.tikz}
\end{figure}
\end{document}

如果没有 pgfplotsset 指令,则不会出现此问题。但我需要逗号分隔。有没有更简单的方法使用逗号代替点,例如 pgfplots 的本地化?

答案1

经过一些尝试和测试我发现

\pgfplotsset{/pgf/number format/use comma}

代替

\pgfplotsset{compat=newest,
ticklabel style={% gilt für x und y
/pgf/number format/.cd,
use comma,
1000 sep={}
}}

解决了问题。希望这对其他人有帮助。

相关内容