我正在尝试制作一个具有双对数 y 轴的图。这可能吗?这应该会改变每个对数增量的距离,因为我想绘制所谓的比特错误率。要获得测量数据的直线,需要这种类型的缩放 (y=log(log(x))。众所周知,在正常对数图中,每个增量之间的距离是相同的...不幸的是,我无法在 pgfplots-manual 中找到解决方案。那里给出的唯一选项是单轴或双轴的单对数。示例图片在下面的链接中给出。它应该是这样的。
答案1
正如 Christian Feuersänger 所说,您可以使用 来y coord trafo
动态转换坐标。刻度标签通常会使用 重新转换y coord inv trafo
,但数学引擎的精度不够高(1000 变成 997.8),因此您必须明确提供标签:
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
y coord trafo/.code=\pgfmathparse{log10(log10(#1))},
domain=0:2,
ymax=10000,
ytick={10,100,1000,10000},
yticklabels={10,100,1000,10000},
extra y ticks={2,...,9,20,30,...,90,200,300,...,900,2000,3000,...,9000},
extra y tick labels={},
every extra y tick/.style={major tick length=3pt}
]
\addplot {exp(exp(x))};
\end{axis}
\end{tikzpicture}
\end{document}