刻度标签

刻度标签

如何缩放 Tikz 中的刻度标签以复制 Matlab 命令

set(gca, 'XTick', xt, 'XTickLabel', xt.^3)

例如,xtick 标签应转换为以下内容

xtick={10,15,20,25,30,35},
xticklabels={1000,3375,8000,15625,27000,42875},

我想要一个自动化的程序来实现这一点。就像这样:

xticklabel={$\pgfmathprintnumber{\tick^3}$}

遗憾的是,tikz 无法解析这个......

答案1

只需使用xticklabel={\pgfmathparse{\tick^3}$\pgfmathprintnumber{\pgfmathresult}$}以下示例中的 即可。如果您有大量数字,则可能需要使用fpu

\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xticklabel={\pgfkeys{/pgf/fpu}\pgfmathparse{\tick^3}$\pgfmathprintnumber{\pgfmathresult}$}]
\addplot [domain=0:35] {x};
\end{axis}
\end{tikzpicture} 
\end{document}

在此处输入图片描述

相关内容