単一の二重対数軸

単一の二重対数軸

二重対数の y 軸を持つプロットを作成しようとしています。これは可能ですか? ビット エラー レートと呼ばれるものをプロットしたいので、各対数増分の距離を変更する必要があります。測定データを直線にするには、このタイプのスケーリングが必要です (y=log(log(x))。通常のログ プロットでは、各増分間の距離は同じであることがわかっています...残念ながら、pgfplots マニュアルで解決策を見つけることができませんでした。そこで提供されている唯一のオプションは、1 つまたは両方の軸に単一のログを使用することです。例の画像が以下のリンクに示されています。これは、表示されるはずの方法です。

答え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}

関連情報